var
a : array [1..100] of real;
n, i : integer;
begin
read (n);
for i : = 1 to n do read (a[i]);
for i : = 1 to n do
if a[i] < = 0 then
begin
writeln ('no');
readln;
halt;
end;
writeln ('yes');
readln;
end.
var
a : array [1..100] of real;
n, i : integer;
o : real;
begin
read (n);
for i : = 1 to n do read (a[i]);
o : = a[1];
for i : = 2 to n do
if a[i] < > o then
begin
writeln ('no');
readln;
halt;
end;
writeln ('yes');
readln;
end.
var
a : array [1..100] of real;
n, i : integer;
x : real;
begin
read (n);
for i : = 1 to n do read (a[i]);
read (x);
for i : = 1 to n do
if a[i] = x then
begin
writeln ('yes');
readln;
halt;
end;
writeln ('no');
readln;
end.
самая оптимальная стратегия угадывания - дихотомия, то есть деление отрезка пополам и задавание вопроса больше? (или меньше? )
например, загадано 50
последовательность
32 64/2 больше
48 (32+64)/2 больше
56 (48+64)/2 меньше
52 (48+56)/2 меньше
50 (48+52)/2 попал
теперь о . вопрос некорректный, если бы он звучал, как сколько попыток нужно сделать, чтобы угадать? , то решение простое
64 = 2^6, поэтому нужно 6 попыток 6 = 110b, значит 3 бит достаточно, чтобы в них разместить это количество попыток.
но в вопрос-то другой! потому что в процессе отгадывания на каждом шаге нужно знать 1. концы отрезка, 2. ответ
концы это 6 бит и 6 бит +ответ 1 бит, итого 13 бит на шаг *6 = 78 бит. можно ещё сократить немного, так как в последующем вопросе используется информация из предыдущего(один из концов интервала).
уточни, что имеется в виду под фразой "какое количество информации", иначе неопределена и допускает многочисленные толкования.
Поделитесь своими знаниями, ответьте на вопрос:
Объем информационного сообщения, записанного в 16-битном коде unicode, составляет 8 кбайт.сколько страниц содержит данное сообщение, если известно, что на каждой странице 64 строки по 32символа в строке