Все просто.
Если код равномерный двоичный, а мощность алфавита 26 символов, нужно подобрать такое количество бит (двоичных разрядов), чтобы оно могло вместить 26 комбинаций.
1 бит - 2 комбинации (2¹ = 2)
2 бита - 4 комбинации (2² = 4)
3 бита - 8 комбинаций (2³ = 8)
4 бита - 16 комбинаций (2⁴ = 16)
5 бит - 32 комбинации (2⁵ = 32)
Видно, что 4 бита мало, а 5 бит кодируют даже не 26, а 32 комбинации. Следовательно, под код одного символа нужо 5 бит.
А если символов 20, то в 20 раз больше. 5×20 = 100 бит. Это и есть нужная нам длина.
Все просто.
Если код равномерный двоичный, а мощность алфавита 26 символов, нужно подобрать такое количество бит (двоичных разрядов), чтобы оно могло вместить 26 комбинаций.
1 бит - 2 комбинации (2¹ = 2)
2 бита - 4 комбинации (2² = 4)
3 бита - 8 комбинаций (2³ = 8)
4 бита - 16 комбинаций (2⁴ = 16)
5 бит - 32 комбинации (2⁵ = 32)
Видно, что 4 бита мало, а 5 бит кодируют даже не 26, а 32 комбинации. Следовательно, под код одного символа нужо 5 бит.
А если символов 20, то в 20 раз больше. 5×20 = 100 бит. Это и есть нужная нам длина.
Поделитесь своими знаниями, ответьте на вопрос:
Бандиты гарри и ларри отдыхали на природе. решив пострелять, они выставили на бревно несколько банок из-под кока-колы (не больше 10 гарри начал простреливать банки по порядку, начиная с самой левой, ларри — с самой правой. в какой-то момент получилось так, что они одновременно прострелили одну и ту же последнюю банку. гарри возмутился и сказал, что ларри должен ему кучу денег за то, что тот лишил его удовольствия прострелить несколько банок. в ответ ларри сказал, что гарри должен ему еще больше денег по тем же причинам. они стали спорить кто кому сколько должен, но никто из них не помнил сколько банок было в начале, а искать простреленные банки по всей округе было неохота. каждый из них помнили только, сколько банок прострелил он сам. определите по этим данным, сколько банок не прострелил гарри и сколько банок не прострелил ларри. входные данные в единственной строке входного файла input.txt записано 2 числа — количество банок, простреленных гарри и ларри соответственно. выходные данные в файл output.txt выведите 2 числа — количество банок, не простреленных гарри и ларри соответственно. пример № input.txt output.txt 1 4 7 6 3
#include <iostream>
using namespace std;
int main()
{
int Larry, Garry;
cin >> Garry >> Larry;
int Result = Larry + Garry - 1;
cout << Result - Garry << " " << Result - Larry;
return 0;
}
Проверка4 7
6 3