Украинское сообщество программистов

Трудный вопрос на собеседовании #2

Александр Скакунов
Опубликовано 9.06.2008 в Статьи

Продолжаем серию переводов цикла “Трудные вопросы на собеседовании“.

Задача #2

Рассмотрим игру, в которую играют двое на круглом столе неопределенного диаметра. Каждый игрок имеет безграничное количество одинаковых монет (четвертаков) и ходит, располагая монету на столе так, что она целиком находится на столе и не накрывает другие монеты, расположенные на игровом поле. Побеждает тот игрок, который делает последний допустимый ход. У кого из игроков (если таковой будет) может быть стратегия, гарантирующая победу, и какова эта стратегия?

Ждите ответ через неделю!

UPDATE: решение

Теги: ,

1 звезда2 звезды3 звезды4 звезды5 звезд (15 голосов, средний: 3.33 из 5)
Загрузка ... Загрузка ...
Распределение голосов

Понравилась статья? Подпишись на обновления по RSS/E-mail

Подписаться, не оставляя комментарий

Все комментарии (21) к “Трудный вопрос на собеседовании #2” RSS

  1. fe2s

    первый игрок
    первый ход – кладем монету по центру
    остальные хода – симметрично монете противника относительно центра

  2. alexdolgin

    Насколько я понимаю, в этой игре выиграет тот, кто ходит первым.
    Стратегия простая: первым ходом положить монету по центру, каждый следующий ход — клсть монету симметрично предыдушей монете противника.

  3. DmitryC

    достаточно положить первым монету по центру. Потом, учитывая что стол круглый, в любом случае найдется ход у первого.

  4. Сергей Волошин

    Интересно, что меняется, если стон не круглый, а квадратный? И монетки квадратные :)

  5. http://r-a-n-d-0-m.livejournal.com/

    для правильных многоугольников точно ничего не меняется =)

  6. Niraxoid

    Можно уточнение? Игроки ходят пошагово, как в шахматах? Или же на время кто быстрее? :)

  7. qqq

    Вспомнился анекдот про козірній пипец :)

  8. Alex Shelpuk

    Хотів би поділитись своїми роздумами.
    Висловлена умова про те, що “для правильных многоугольников точно ничего не меняется =)” не є достатньою та і необхідною також. Скажімо для трикутників висловлена раніше стратегія не підійде. Але вона чудово працює у випадку такого неправильного многокутника, як прямокутник.
    Ця задача вирішується виказаною стратегією у випадку будь-яких фігур симетричних відносно свого геометричного центра. Для прикладу стіл може бути прямокутником, а фігура правильним шестикутником. Для правильних многокутників можна зробити поправку на те, що вони повинні мати парну кількість вершин…
    Ну а у випадку фігур несиметричних відносно свого геометричного центру… То тут треба враховувати розмір фігури у стола (=

  9. serge lorich

    классическая игровая задача. действительно нужно первым положить монету в центр и копировать ходы противника. причем монеты могли бы иметь разное достоинство. тогда ходить нужно монетой того же достоинства что и противник.

  10. Сергей Волошин

    А для эллиптического стола с полуосями a и b и радиусом монетки c?

  11. mickolka

    Задача имеет одинаковое решение для стола в виде любой центральносимметричной фигуры.
    решение предложено в первоых трех коментариях

    Следующий.

  12. Sniff

    Центральная симметрия необязательна, достаточно и осевой.

  13. Yakov Komasyuk

    У второго игрока может быть стратегия гарантирующая победу в том случае, если первый игрок первым ходом не поставит монетку в центр – поставить монетку близко к центру настолько, чтобы в центре “слота” для монетки не осталось и далее играть симметрично ходам первого игрока… :)

  14. disop

    Если диаметр стола “неопределенный”, и монеты – тоже, то возможна ситуация, когда диаметр монеты будет больше или равен диаметру стола. В таком случае первый игрок побеждает всегда :)

  15. Всеволод Дёмкин

    ну да, или диаметр монеты будет бесконечно мал по сравнению с диаметром стола, и в таком случае игра вообще не закончится… :)

  16. VladimirL

    А если размер монеты больше диаметра стола, то выиграет второй игрок, поскольку первый не сможет положить свою монету.

  17. Скакунов Александр

    Итак, оригинальный ответ:

    У игрока 1 есть выигрышная стратегия. Его первым ходом должно быть расположение монеты в точном центре стола. Если это уже достаточно вам сказало, то, думаю, дальше вам лучше не читать. Если же вы до смерти хотите узнать все остальное, читаем дальше.

    Затем игрок 2 располагает монету где-либо на столе (но не в центре, разумеется). Теперь убедимся, что игрок 1 всегда имеет допустимый ход: располагая монету диаметрально противоложно только что поставленной монете игрока 2 (т.е. самый первый ход игрока 1 будет средней точкой на линии между последним ходом игроков 1 и 2). Продолжаем, пока стол не заполнится, но т.к. игрок 1 всегда имеет допустимый ход, игрок 2 столкнется с тем, что у него-то допустимого хода нет. И игрок 1 побеждает.

    Обратите внимание, что эта стратегия работает даже в вырожденном случае, когда стол имеет размеры четвертака.

  18. Sanya

    А вариант, когда монеты выкладываются на столе неплотно не рассматривается?
    Как известно, вокруг одной монеты впритык укладывается шесть таких же монет. Допустим, после первого хода первого игрока в центр, начинается “обкладывание” центральнаой монеты. Но если второй игрок третьим ходом (т.е. когда остается место для двух монет рядом) положит свою монету вплотную к центральной, но на определенном расстоянии от соседних, то первый игрок не может сделать симметричный ход, не расширив диаметр занятого монетами круга.

  19. dimon23

    2Sanya: прочитай внимательней комментарий под номером 17. Есть понятие того, что означает “диаметрально противоложно” ?

  20. Thrash
  21. Thrash

    да, она реально выигрышная

Оставить комментарий

Указать свой сайт могут только зарегистрированные пользователи. Регистрация или вход.

Архив

Добавить статью

Станьте автором нашего сайта!

Какие материалы подходят для публикации? — Такие.

Присылайте статьи на editors@developers.org.ua.

Подробнее.

Популярные теги

Все теги

Комментарии

Последние комментарии

интернет магазин бытовая техника магазин Laptoper