#include using namespace std;
void main()
{
setlocale(LC_ALL, "Rus");
int a,n,i,x;
cin >> n;
if (n 10 && n % 2 != 0) || (n % 10 = 0)
{
i = 10;
x = 9;
while (i != n);
i = ++i;
if (i % 2 != 0) || (i % 10 = 0)
{
x = x + 1;
}
cout << x << endl;
}
Скажите что здесь неправильно просто не могу понять.
Таким образом, оставшиеся три кода не могут быть началом кода буквы Б, и началами кодов друг друга.
То есть коды 0 и 00 отпадают сразу, т.к. это начала буквы Б.
Если предположить, что один из кодов равен 1, и что нам нужны кратчайшие коды, значит оставшиеся коды могут быть только 01 и 011.
Если предположить, что коды двузначны, тогда кодами могут быть 01, 10 и 11.
В первом случае суммарная длина кодов равна 1+2+3+3 = 9, во втором случае - 2+2+2+3 = 9.
Оба варианта подходят, кратчайшая суммарная длина - 9