К сожалению, задание составлено некорректно. 0<N≤30 допускает случай N=0. Но тогда ряд значений должен оканчиваться 2⁰, а не 2¹, как указано. Да и массив из N элементов при N=0 - нечто странное. Поэтому принято решение считать значение N<1 ошибкой.
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger; Assert(n>0,'Нарушение: N<=0'); var a:=SeqGen(n,2,i->2*i).Reverse.ToArray; a.Println end.
2. Двоичное число длиной в 3 бита позволяет закодировать до различных вариантов, а в 2 бита - до вариантов. У кубика 6 граней, то есть 6 уникальных вариантов. Отсюда следует, что 2 бит нам не хватает, а 3 - вполне. ответ: 3 бита.
3. Если цвета маркеров уникальны, то для каждого маркера нужно выделять отдельный код. Двоичное число длинной в 4 бита дает возможность закодировать до различных вариантов, но может быть и меньше. Также, то, что выделено именно 4 бита, готовит о том, что 3 бит не хватило. Значит, кол-во маркеров лежит в диапазоне от до . (В большинстве таких задач, о таком не задумываются. Поэтому ответ, скорее всего, 16) ответ: 16 штук.
4. Формулировка "В этом году" говорит о том, что получатель, скорее всего, знает о том, что встреча будет, для него важнее именно месяц, в который она состоится. Двоичное число длиной в 3 бита позволяет закодировать до различных вариантов, а в 2 бита - до вариантов. В году 12 месяцев. Значит, 4 битов должно хватить. ответ:4 бита.
0<N≤30 допускает случай N=0. Но тогда ряд значений должен оканчиваться 2⁰, а не 2¹, как указано. Да и массив из N элементов при N=0 - нечто странное. Поэтому принято решение считать значение N<1 ошибкой.
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger;
Assert(n>0,'Нарушение: N<=0');
var a:=SeqGen(n,2,i->2*i).Reverse.ToArray;
a.Println
end.
Примеры
5
32 16 8 4 2
20
1048576 524288 262144 131072 65536 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2
ответ: 7 бит.
2. Двоичное число длиной в 3 бита позволяет закодировать до различных вариантов, а в 2 бита - до вариантов.
У кубика 6 граней, то есть 6 уникальных вариантов. Отсюда следует, что 2 бит нам не хватает, а 3 - вполне.
ответ: 3 бита.
3. Если цвета маркеров уникальны, то для каждого маркера нужно выделять отдельный код. Двоичное число длинной в 4 бита дает возможность закодировать до различных вариантов, но может быть и меньше. Также, то, что выделено именно 4 бита, готовит о том, что 3 бит не хватило. Значит, кол-во маркеров лежит в диапазоне от до .
(В большинстве таких задач, о таком не задумываются. Поэтому ответ, скорее всего, 16)
ответ: 16 штук.
4. Формулировка "В этом году" говорит о том, что получатель, скорее всего, знает о том, что встреча будет, для него важнее именно месяц, в который она состоится.
Двоичное число длиной в 3 бита позволяет закодировать до различных вариантов, а в 2 бита - до вариантов.
В году 12 месяцев. Значит, 4 битов должно хватить.
ответ:4 бита.