Предположим, что Максим и Ербол играют по оптимальной стратегии. Для удобства введем два понятия: выигрышная позиция и проигрышная позиция. Выигрышная - это позиция, которая приводит игрока, ходившего с нее, к выигрышу. Проигрышная - это позиция, которая приводит игрока, ходившего с нее, к проигрышу. Также выигрышная позиция - это позиция, ведущая противника к проигрышной. И наоборот, проигрышная позиция - это позиция, ведущая противника к выигрышной. Вести понятия будем относительно Ербола. Рассмотрим все возможные варианты размера шоколадки: 1x1 - Lose. Позиция проигрышная, т.к. Ербол не сможет сделать ход. 1xN, N > 1 - Win. Все позиции вида такого вида выигрышные, т.к. приводят к проигрышной позиции 1x1. 2x2 - Lose. Позиция проигрышная, т.к. приводит противника к выигрышной позиции 1xN. 2xN - Win. Все позицию такого вида выигрышные, т.к. приводят противника к проигрышной позиции 2x2. 3x3 - Lose. Позиция проигрышная, т.к. приводит противника к выигрышной позиции 2xN или 1xN. 3xN - Win. Все позицию такого вида выигрышные, т.к. приводят противника к проигрышной позиции 3x3. Отсюда несложно заметить, что позиции вида NxN - проигрышные, а остальные - выигрышные. ответ: Если A = B, то выиграет Максим, иначе выиграет Ербол
{ Boland Pascal 7.01 } uses Crt; const n=20; var a,b:array[1..n] of integer; i,k:integer; begin ClrScr; Randomize; Writeln('*** Исходный массив ***'); k:=0; for i := 1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4); if Odd(a[i]) and (a[i]>0) then begin Inc(k); b[k]:=a[i] end end; Writeln; if k>0 then begin Writeln('*** Сформированный массив ***'); for i:=1 to k do Write(b[i]:4); Writeln end else Writeln('Нет элементов для формирования выходного массива'); ReadKey end.
А вот для сравнения современный вариант программы: // PascalABC.NET 3.0, сборка 1088 begin var n:=ReadInteger('Размер массива='); var a:=ArrRandom(n,-25,25); Writeln('*** Исходный массив ***',#13#10,a); var b:=a.Where(x->(Odd(x) and (x>0))); If b.Count>0 then Writeln('*** Сформированный массив ***',#13#10,b) else Writeln('Нет элементов для формирования выходного массива') end.
5 * 2^12 байт = 5 * 2^2 Кб = 20 Кб