📋 Условие

Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя.

🔍 Подробное решение

Два игрока, Петя и Ваня, играют в следующую игру: перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавлять камни в кучу, убирать камни или изменять количество камней в куче. Игра завершается при достижении определённого количества камней.

Подзадачи:

- Определить минимальное S для выигрыша Вани
- Определить два наименьших S для выигрыша Пети вторым ходом
- Определить S для выигрыша Вани первым или вторым ходом

Общий алгоритм:

```python
def g(s, p):
if s >= target:
return p % 2 == 0
moves = [...]
return any(moves) if p % 2 == 1 else all(moves)
```

Применяется для всех вариантов задач на игры с камнями.