- 20, Oct 2024
- #1
Двумерные киральные объекты не являются киральными в трехмерном пространстве. Это связано с тем, что вы можете перевернуть их, что эквивалентно получению зеркального изображения, в отличие от двухмерных изображений, где разрешены только вращения в плоскости объекта, что не может воспроизвести эффект зеркальной операции. В этой задаче мы будем решать, являются ли трехмерные тексты хиральными.
Некоторые определения
- Трехмерный текст: прямоугольный трехмерный массив символов. В этой задаче программам нужно будет обрабатывать только печатаемый ASCII без пробелов (
Z--Z | *k | Qxxx | a* ---- | <0 | xxxx | ** Z--- | | | | l7 | QQQQ | ** Z--- | GB | QQQQ | a* ---- | | | Z--Z | q~ | | ** | ]J | | *a
Z--Z | i~ | Qx | a | abaLIa ---- | >> | xx | b | N#)*@" Z--Z | | | | }-3}#k | >> | QQ | d | ../..' Z--Z | ~i | QQ | e | ---- | | | | Z--Z | | | f | | | | g |
). - Операция зеркала: операция изменения порядка символов вдоль одной оси трехмерного текста.
О ротациях можно думать интуитивно, но вот четкое определение для тех, кто в конечном итоге спросит.
- вращение на 90 градусов: операция транспонирования каждой плоскости, перпендикулярной определенной оси (скажем, \$i\$), с последующим применением зеркальной операции к оси, отличной от \$i\$.
- Вращение: Последовательность поворотов на 90 градусов.
- Хиральный: Трехмерный текст является хиральным, если после применения какой-либо одиночной зеркальной операции не происходит вращения нового текста, воспроизводящего исходный текст. Текст не является хиральным, если после применения одной операции зеркального отражения новый текст можно повернуть обратно в исходный текст.
Несколько более краткое определение киральности — это отсутствие неправильного вращения, при котором объект инвариантен.
Задача
В каком бы формате вы ни предпочитали, в качестве входных данных используйте трехмерный текст.
Выведите одно из двух согласованных значений: одно указывает, что текст является хиральным, а другое — нет.
Самый короткий код выигрывает.
Примеры
В каждой секции вертикальные трубы ( |
) separate the test cases. Within each test case, layers of the three dimensional texts are separated by blank lines.
Не хиральный
~
Хиральный
!
#код-гольф