Решите задачу. Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой – 2 камня, а во второй – 4 камня. У каждого игрока неограниченно много камней. Игроки ходят по очереди. Ход состоит в том, что игрок или увеличивает в 3 раза число камней в любой куче. Или добавляет 2 камня в какую-то кучу. Выигрывает игрок, после хода которого общее число камней в двух кучах становится не менее 15 камней. Кто выигрывает при безошибочной игре обоих игроков – игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен быть первый ход выигрывающего игрока? ответ обоснуйте в виде таблицы или графа.
m = 5; n = 10; a = 20; b = 80;
// Массив имеет размер mxn, интервал задан границами [a;b]
var
i, j, max, outint, T, nT, nI: integer;
Mas: array[1..m, 1..n] of integer;
begin
Randomize;
for i := 1 to m do
for j := 1 to n do
Mas[i, j] := Random(100);
writeln('Исходный массив');
for i := 1 to m do
begin
for j := 1 to n do
write(Mas[i, j], ' ');
writeln;
end;
Mas[i, j] := Random(100);
for i := 1 to m do
begin
max := -1; // все элементы полагаются неотрицательными
nI:=0;
for j := 1 to n do
begin
T := Mas[i, j];
if T > max then begin
max := T; nT := j
end;
if nI = 0 then
if (T <= a) or (T >= b) then nI := j
end;
if nI > 0 then begin
T := Mas[i, nT]; Mas[i, nT] := Mas[i, nI]; Mas[i, nI] := T
end
end;
writeln('Результирующий массив');
for i := 1 to m do
begin
for j := 1 to n do
write(Mas[i, j], ' ');
writeln;
end
end.
Пример выполнения программы в PascalABC.NET
Исходный массив
34 56 89 27 71 0 64 89 80 36
15 59 95 54 37 15 81 64 48 39
89 42 71 55 97 80 48 65 98 55
85 27 45 39 37 74 98 7 7 31
28 56 14 3 45 39 98 19 93 4
Результирующий массив
34 56 89 27 71 0 64 89 80 36
95 59 15 54 37 15 81 64 48 39
98 42 71 55 97 80 48 65 89 55
98 27 45 39 37 74 85 7 7 31
28 56 98 3 45 39 14 19 93 55
Витя - Москва
Боря - Омск
Гриша - Санкт-Петербург
Егор - Киров.
Объяснение:
Известно что Боря жил в одной комнате с мальчиком из Кирова и ни один из этих мальчиков не был в Москве, ни в Санкт-Петербурге, то есть Боря был не из Москвы, не из Питера и не из Кирова, остаётся-Омск.
Гриша играл в одной команде с мальчиком из Москвы, а вечерами к ним заходил мальчик из Кирова, значит, точно знаем, что Гриша был не из Москвы, не из Кирова, остаются Питер и Омск, но мы уже установили, что из Омска был-Боря, получается, что Гриша был из Питера.
Егор и мальчик из Москвы увлекались игрой в шахматы, значит, Егор был точно не из Москвы, и при этом мы знаем, что Омск и Питер уже заняты. Остался Киров У нас остался один город Москва и один мальчик, которого зовут Витя, значит, Витя был из Москвы.