Виклик, взятий з мого конкурсу викликів університетського коду
Це насправді День 0, але вчорашній виклик був надто легким і тут може бути ще одним питанням.
Тетріс - це відеоігра, яка стала популярною у 80-х. Він полягає у розміщенні серії штук різної форми, які падають на дошку, щоб вони вмістилися максимально компактно.
У цій проблемі ми припустимо послідовність шматків, які падають, кожен у певному положенні та з певною орієнтацією, яку неможливо змінити. Шматки накопичуються в міру падіння і цілі ряди не усуваються (як у оригінальній грі). Мета - визначити кінцеву висоту кожного стовпчика дошки після падіння всіх шматочків.
На малюнку представлено 7 різних творів:
Виклик
Враховуючи список штук, виведіть висоту всіх стовпців з дошки після падіння всіх шматочків
Елемент складається з трьох чисел: I, R і P. Перше число, I, є ідентифікатором шматка (число між 1 і 7, в тому ж порядку, як на рисунку). Друге число, R, - обертання деталі. Він може приймати значення 0, 90, 180 або 270 і являє собою кут повороту деталі в напрямку проти годинникової стрілки. Третє число, P, позначає положення шматка. Представляє стовпчик зліва, зайнятий фрагментом (це може бути індекс 1 або 0. Будь ласка, вкажіть).
Приклад та тестовий випадок (1 індекс)
- Дано
[[1, 0, 1], [4, 0, 1], [5, 90, 4]]
- Вихідні дані
[3, 3, 1, 3, 2]
- Дано
[[6, 270, 4], [1, 180, 5], [1, 90, 6], [7, 0, 4]]
- Вихідні дані
[0, 0, 0, 9, 9, 8, 3, 3]
Даний
[[3,0,1],[3,180,3]]
вихід[1,1,4,4,4]
Даний
[[2,180,1],[2,0,3]]
вихід[2,2,4,3,3]
Примітки
- Це код-гольф
- Рядок / стовпець може бути індексом 1 або 0. Будь ласка уточніть.
- Ви можете перезначити вхідні значення (можливо, ви хочете назвати шматок 1 як A тощо). У цьому випадку, будь ласка, вкажіть
Запитання
Чи можемо ми використовувати будь-які 4 різних значення замість кута в градусах?: Так
Чи повинні ми обробляти "дірки", якщо шматок не точно відповідає попереднім ?: Так
Чи обмежена висота чи ширина дошки? Ні ширина, ні висота не обмежені
Дякуємо @Arnauld за зображення та тестові приклади *. *
I
,R
іP
вводити в іншому порядку?