Игра «Реверси» · Шаг 4 из 5
Кто ходит дальше
Обычно ходят по очереди. Но бывает, что сопернику некуда пойти, — тогда он пропускает ход, пасует, и снова ходит тот, кто только что сходил. А если пойти некуда обоим, партия кончается, даже если на поле ещё есть пустые клетки.
Что сделать
Скажите после хода, кто ходит дальше, — или что партия окончена.
Что приходит
kto— кто только что сходил:"B"или"W"hody_sopernika— список ходов, которые теперь есть у соперникаhody_svoi— список ходов, которые теперь есть у того, кто сходил
Что вернуть
Соперника, если у него есть ход; иначе того же kto, если ход есть у него; иначе None — партия окончена.
Допишите функцию kto_dalshe в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
В игре
Игра зовёт kto_dalshe после каждого хода — вашего и бота. Решите шаг — и в игре появится пас: если боту некуда пойти, снова ходите вы, а не кончается партия.
Без этого шага: пасовать нельзя — если сопернику некуда ходить, партия кончается.
kto_dalshe("B", [(2, 3)], [(5, 4)])
'W'
Соперник для "B" — "W", для "W" — "B".
- У соперника есть хотя бы один ход — ходит соперник.
- У соперника ходов нет, а у
ktoесть — соперник пасует, снова ходитkto. - Ходов нет ни у кого —
None: партия окончена.
Сами списки ходов разбирать не нужно — важно только, пусты ли они.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.