Задания
Версия для печати и копирования в MS Word
Тип 20 № 85733
i

Для игры, опи­сан­ной в за­да­нии 19, най­ди­те два наи­мень­ших зна­че­ния S, при ко­то­рых у Пети есть вы­иг­рыш­ная стра­те­гия, причём од­но­вре­мен­но вы­пол­ня­ют­ся два усло­вия:

—  Петя не может вы­иг­рать за один ход;

—  Петя может вы­иг­рать своим вто­рым ходом не­за­ви­си­мо от того, как будет хо­дить Ваня.

Най­ден­ные зна­че­ния за­пи­ши­те в от­ве­те в по­ряд­ке воз­рас­та­ния

 

Ответ:

Спрятать решение

Ре­ше­ние.

При­ведём ре­ше­ние на языке Python.

def Win(n, m):

return 0 if m <= 1243 else any([Lose(n-1, m-4), Lose(n-1, m-6), Lose(n-1, m//2)])

def Lose(n, m):

return 1 if m <= 1243 else 0 if not n else\

all([Win(n-1, m-4), Win(n-1, m-6), Win(n-1, m//2)])

print('20)', *[m for m in range(1244, 10000) if not Win(1, m) and Win(3, m)][:2])

 

Ответ: 2492 2493.