Помогите решить задачку

Discussion in 'Общие' started by akrivcov, Oct 27, 2008.

  1. akrivcov

    akrivcov Активный участник

    31,386
    3,087
    нужно подобрать код перебрав ограниченное число вариантов. чмсло ячеек 10. Число цифр тоже 10. Попыток - 5. Каждая цифра может присутствовать в коде 1 раз. Каков алгоритм угадывания. Игра Шерлок Холмс :)
     

    Attached Files:

  2. Михайло

    Михайло Активный участник

    3,308
    0
    тобишь, кодом является некое десятизначное число, в котором нет повторяющихся цифр. типа 0123456789

    Если так, то вариантов многовато.
     
  3. akrivcov

    akrivcov Активный участник

    31,386
    3,087

    Именно так. Но должен быть какой-то алгоритм беспроигрышный. Хотя бы чтобы при последней попытке было 50 на 50. Сейчас получается только 10%. Хрен угадаешь!
     
  4. Serg21220

    Serg21220 Активный участник

    3,361
    2


    Правильно ли я понимаю, что можно ввести какой-нить код, скажем "0123456789" и программа выдаст, какие цифры стоят на своих местах, а какие - нет? И таких попыток - 5?
     
  5. akrivcov

    akrivcov Активный участник

    31,386
    3,087
    Serg21220,
    Да. Максимум, что получалось. Это когда перед последней попыткой есть 3 не угаданных ячейки, то есть 9 вариантов.
     
  6. Serg21220

    Serg21220 Активный участник

    3,361
    2


    Почему 9??? 3ячейки по три цифры = 3! вариантов, т.е. 1*2*3=6 вариантов...

    "Максимум, что получалось" - это вы алгоритм придумали, или это вы пытались и вам так повезло?
     
  7. akrivcov

    akrivcov Активный участник

    31,386
    3,087
    Повезло не повезло. Но до 3 ячеек при последней попытке приходим регулярно.
     
  8. NeoSky

    NeoSky Активный участник Staff Member

    12,021
    937
    akrivcov,
    в смысле, какой алгоритм?
    Да, никакой. Простой подбор.
     
  9. Hermes

    Hermes Активный участник

    11,609
    2
    Т.е. каждая цивра обязательно присутствует, причем в единичном экземпляре
    Попробуйте так поподбирать:
    0000011111
    3 варианта
    1 - вскроются обе цифры на своих местах
    2 - 1 цифра
    3 - ни одной

    в 1 варианте, на оставшиеся места поставить 4 двойки и 4 тройки
    во 2-м варианте (допустим угадали цифру 1) забить на 0 и опять пробовать двойки и тройки
    в 3-м 2222233333

    А дальше везение и анализ. 100% выигрышной стратегии, имхо нет.
     
  10. Гость

    Гость Гость



    В 3-м варианте надо ставить код 1111100000. После 5-и попыток число всегда угадывается.
     
  11. Hermes

    Hermes Активный участник

    11,609
    2
    Возможно. Мне просто идея пришла, детально я ее не проверял.
     
  12. Big boy

    Big boy  Активный участник

    2,671
    0
    А дайте ссылку, что ли - посмотреть, попробовать...
     
  13. Hermes

    Hermes Активный участник

    11,609
    2
    Квест это такой. Если владеете любым языком программирования, самому проще за пол часа максимум запрограммировать и поиграться