tiles. Аня и Борис по очереди убирают со стола ровно одну плитку, первой ходит Аня.
Следим за побитовым XOR всех чисел, которые остались на столе (XOR одной плитки — её число, XOR пустого стола — 0):
- если в начале хода XOR оставшихся плиток равен 0, игрок, чей это ход, сразу побеждает;
- если игрок своим ходом делает XOR оставшихся плиток равным 0, он проигрывает.
Оба играют наилучшим образом. Верните True, если побеждает Аня, и False иначе.tiles=[4, 4, 6] → False
Если Аня уберёт 6, останутся [4, 4] с XOR 0 — она проиграла. Если уберёт 4, останутся [4, 6] с XOR 2, Борис убирает любую плитку, и последнюю придётся убрать Ане, обнулив XOR. Аня проигрывает.
tiles=[5, 9] → True
Какую бы плитку ни убрала Аня, у Бориса останется одна плитка с ненулевым числом, и, убрав её, он обнулит XOR. Аня побеждает.
tiles=[3, 5, 6] → True
3 XOR 5 XOR 6 = 0 ещё до первого хода, поэтому Аня побеждает сразу.
tiles=[4, 4, 6]
False
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 119 тестов на сервере, включая скрытые.