<span>
using System;
namespace Matrix
{
class MainClass
{
private static int size; // Размер матрицы
public static void Main (string[] args)
{
size = Int16.Parse(Console.ReadLine ());
int[,] matrix = new int[size, size];
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
if (i == 0 || j == 0 || i == (size - 1) || j == (size - 1)){
matrix [i, j] = 1;
} else {
matrix [i, j] = 0;
}
}
}
/*for (int i = 0; i < size; i++) { // Вывод матрицы в консоль
for (int j = 0; j < size; j++) {
Console.Write (matrix [i, j]);
}
Console.WriteLine ();
}*/
}
}
<span>}</span>
</span>
Пытаемся подобрать код, начиная с наименьшей длины.
Коды длины 1.
Е = 0: нет однозначности, 0101 = ОО = ЕТ
Е = 1: нет однозначности, 101 = Т = ЕО
Коды длины 2.
Е = 00: ок, получился префиксный код, про который известно, что он допускает однозначное декодирование.
Е = 01: совпадает с О
Е = 10: нет однозначности, 101101 = ТТ = ЕЛО
Е = 11: совпадает с Л.
Таким образом, есть единственный ответ 00.
Вопросы должны, как мне кажется, задаваться следующим образом:
1) N = 1.
2) В какой половине алфавита находится N-я буква?
3) В какой половине из этой части находится N-я буква?
... и т.д. пока не дойдём до самой буквы, т.е. потребуется 5 вопросов на каждую букву (2^5 = 32).
Таким образом, всего – 5*5 = 25 вопросов.
Перезапусти комп и все норм
если конечно ты не скачал вирусов