Ответ:
#include <iostream>
using namespace std;
int main()
{
int a, b, h;
setlocale(LC_ALL, "Russian");
cout << "Введите номер дома A: ";
cin >> a;
cout << "Введите номер дома B: ";
cin >> b;
if (a % 2 == 0)
a--; // переводим А к нечетному дому
if (b % 2 == 0)
b--; // переводим B к нечетному дому
h = abs((b - a) / 2);
cout << "\nДлительность: " << h << " мин.\n";
}
Объяснение:
// время - разность номеров домов деленная на два. абсолютное значение: чтобы дома можно было вводить в любом порядке
Всего - 779 спортсменов
Прошли - 280 спортсменов
Определим минимальную кодировку.
Это делается так:
i - это кол-во бит.
Например
тут i = 2, этого хватило бы для 3 спортсменов.
то есть 9 бит хватило бы для 511 спортсменов. А нам надо <span>779. Значит увеличиваем кол-во бит
</span><span>
Этого хватило бы для 1023 спортсменов. Нам хватает.
</span>
Значит минимальное кол-во бит для кодирования - 10
У нас прошли 280, а каждая запись кодируется 10 битами, значит умножив 280 на 10, мы найдём объём всех записей.
280 * 10 = 2 800 бит
Ответ: 2 <span>
800 бит или 350 байт.</span>
Смотрите код во вложении.
1024*8/64*64=2 бита - это глубина цвета i
2 возводим в степень 2 =4 цвета по формуле(N=2^i)
3*2=6
128*512*6=393216Ъ
128+512=640
640:10=64
64*6=384кб