Блог пользователя rasmus

Автор rasmus, 12 лет назад, По-русски

Подскажите как построить граф в задаче с тимуса http://acm.timus.ru/problem.aspx?space=1&num=1016. По идее там должен получиться граф 8*8*24, только как его построить? ****UPD: тема закрыта****

  • Проголосовать: нравится
  • +1
  • Проголосовать: не нравится

»
12 лет назад, # |
Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится

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

Для каждого состояния можно хранить положение самого кубика(т.е. 6 чисел — номера граней, который сейчас находятся на соответствующих позициях)

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

всего таких переходов для каждого состояния возможно четыре

  • »
    »
    12 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    а массив used получается для каждой клетки на 24 состояния?

    • »
      »
      »
      12 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      я делала 8*8*6*6 (вместо 24 6*6 для удобства)

      • »
        »
        »
        »
        12 лет назад, # ^ |
          Проголосовать: нравится +3 Проголосовать: не нравится

        спасибо, сдал, привела мой мозг в порядок;)