- 21, Oct 2024
- #1
Башня состоит из слоев, каждый из которых на одну единицу короче нижнего. Каждый слой полностью находится поверх предыдущего. Например, вот башня и ее карта высот:
[1] -> True [1, 2] -> True [2, 1] -> True [1, 2, 3] -> True [1, 3, 2] -> True [2, 1, 3] -> False [2, 3, 1] -> True [3, 1, 2] -> False [3, 2, 1] -> True [1, 2, 3, 4] -> True [1, 2, 4, 3] -> True [1, 3, 2, 4] -> False [1, 3, 4, 2] -> True [1, 4, 2, 3] -> False [1, 4, 3, 2] -> True [2, 1, 3, 4] -> False [2, 1, 4, 3] -> False [2, 3, 1, 4] -> False [2, 3, 4, 1] -> True [2, 4, 1, 3] -> False [2, 4, 3, 1] -> True [3, 1, 2, 4] -> False [3, 1, 4, 2] -> False [3, 2, 1, 4] -> False [3, 2, 4, 1] -> False [3, 4, 1, 2] -> False [3, 4, 2, 1] -> True [4, 1, 2, 3] -> False [4, 1, 3, 2] -> False [4, 2, 1, 3] -> False [4, 2, 3, 1] -> False [4, 3, 1, 2] -> False [4, 3, 2, 1] -> True
Поскольку длины слоев представляют собой целые числа от 1 до n, а слои полностью расположены друг над другом, карта высот всегда будет перестановкой целых чисел из n>0
to #
##
###
# ###
#####
21354
. (Понимаете, почему? Комментарий ниже)
Обратное неверно. Некоторые перестановки не являются картой высот башни. перестановки башни. Например, [1,4,5,3,2]
is not the height map of any tower, meaning that it's not a tower permutation. However, [2,1,3,5,4]
это перестановка башни, как вы можете видеть из предыдущего рисунка ascii.
Чтобы внести ясность, следующее нет башня:
n
Потому что каждый слой должен быть непрерывным. Вместо этого это замок :P
Ваша задача — взять перестановку целых чисел от 1 до n (включительно) и решить, является ли это перестановкой башни, как обычно и по правилам. Вы можете предположить, что 1
Тестовые случаи (все перестановки до n=4)
#
##
###
####
#####
14532
#код-гольф #задача-решение #код-гольф #массив #проблема-решение