Алгоритм выигрыша в этой игре очень простой: каждый раз надо забирать из кучки M+1 камешек. Следовательно, первым ходом надо забрать количество камешков, равное остатку от целочисленного деления N на М+1, а затем в каждый последующий ход забирать столько камешков, чтобы оставшееся их число было кратно M+1.
Ниже приведено решение на языке Borland Pascal 7.01
uses Crt;
var
N,M,k:integer;
begin
ClrScr;
Write('N,M='); Read(N,M);
k:=N mod (M+1);
Writeln(k);
ReadKey
end.
Тестовое решение:
N,M=7 4
2
Var i:integer;
begin
writeln('введите число от 1 до 7');
readln(i);
case i of
1:writeln('Понедельник');
2:writeln('Вторник');
3:writeln('Среда');
4:writeln('Четверг');
5:writeln('Пятница');
6:writeln('Суббота');
7:writeln('Воскресенье');
end;
readln;
end.
Var a, b: real;
begin
a:=4;
b:=4;
a:=2*a+3*b;
b:=a/2*b;
write(b);
end.
Ответ
40
До: 2 байта\символ
После: 1 байт\символ, размер сократился на 240 бит
Решение: 240\8=30 байт
поскольку 30\1=30, размер сообщения = 30 символов.