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

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

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

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

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

 

Ответ:

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

Ре­ше­ние.

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

def f(x, h):

if h == 4 and x >= 313:

return 1

elif h == 4 and x < 313:

return 0

elif x >= 313 and h < 4:

return 0

else:

if h % 2 != 0:

return f(x + 2, h + 1) or f(x + 3, h + 1) or f(x * 2, h + 1) # стра­те­гия по­бе­ди­те­ля

else:

return f(x + 2, h + 1) and f(x + 3, h + 1) and f(x * 2, h + 1) # стра­те­гия про­иг­рав­ше­го

for x in range(1, 313):

if f(x, 1) == 1:

print(x)

 

Ответ: 78 154.