Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Скрамбл для кубика рубика 3х3  (Прочитано 49368 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DRomanov

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: Скрамбл для кубика рубика 3х3 [PYTHON 3]
« Ответ #30 : 15 Августа 2020, 12:41:05 »
Программисты - интересные люди. Я - гуманитарий, для численного моделирования подходят небольшие скриптики на современном аналоге Basic'а - на питончике. Эта задача решается в дюжину строк:

# Rubik's Cube scramble, 25 moves FTM (Face Turn Metric)
# Without any repeats fnd double previos moves such as R L R
# DRomanov 05-Nov-2018

from random import randint

blocklist = []
move = 0

while move < 25:
    side = randint(0, 5)

    if side in blocklist:
        continue

    if (5 - side) not in blocklist:  # no opposite side
        blocklist = []

    blocklist.append(side)

    print('LFUDBR'[side] + ('', '\'', '2')[randint(0, 2)], end=' ')
    move += 1
« Последнее редактирование: 15 Августа 2020, 13:08:27 от DRomanov »

 

Страница сгенерирована за 0.017 секунд. Запросов: 22.