См. Отверстие № 1, если вы не уверены
Что каждый ребенок делает после того, как соберет ведра с конфетами на Хэллоуин?
Сортировка по типу и размеру, конечно 1 !
Соревнование
С учетом выброшенного мешка с конфетами различных форм и размеров сортируйте конфеты слева направо на основе:
- Первое: количество конфет (поэтому 5 из одного останется больше, чем 4 из другого)
- Второе (если после первого есть какие-либо связи): если количество одинаковое, конфета с большей внутренней областью (в зависимости от количества символов) будет иметь более высокий рейтинг.
Если после второго сорта все еще есть связь, то вы можете выбрать любой из них первым.
вход
Вы получите конфету через стандартный ввод; разбросаны о. Смотрите примеры ниже.
Выход
Выведите заказанную конфету в правильном порядке. Обратите внимание, конфеты всегда должны быть помещены в очень аккуратные столбцы, чтобы успокоить рыбку OCD 2 . Конфеты того же типа должны быть помещены непосредственно друг под другом. Смотрите примеры ниже.
Что вы подразумеваете под "внутренним пространством"?
Внутренняя площадь конфетки измеряется количеством персонажей, составляющих конфету в целом.
Любой пробел в пределах «границы» считается частью области конфеты.
Граница - это любой связанный цикл символов, каждый символ по диагонали или рядом с соседом.
Например,
+--------+
| |
| |
| |
| |
+--------+
имеет большую площадь, чем
XXXXXXXX
XXXXXXXX
XXXXXXXX
XXXXXXXX
хотя в целом у него меньше символов.
Примеры
вход:
_ \| |/ _
_ lllllll -*------------*- -\ /- lllllll
lllllll lllllllll | /\ /\ / | +|\ooooo/|+ lllllllll
lllllllll llll+llll | / \/ \/ | ||o o|| llll+llll
llll+llll lllllllll -*------------*- ||o o|| lllllllll
lllllllll lllllll /| |\ +|/ooooo\|+ lllllll
lllllll | -/ \- |
| | _ |
| -\ /- | lllllll |
| +|\ooooo/|+ | lllllllll |
| ||o o|| | llll+llll |
| ||o o|| + lllllllll rrr--rrr +
+ +|/ooooo\|+ lllllll rr||rr
-/ \- | | || |
| | || |
| | || |
| | || |
| \| |/ | || |
+ -*------------*- | || |
| /\ /\ / | | || |
-\ /- | / \/ \/ | | || |
+|\ooooo/|+ -*------------*- rr||rr
||o o|| /| |\ rrr--rrr
||o o||
+|/ooooo\|+
-/ \-
Станет
_ \| |/ -\ /- rrr--rrr
lllllll -*------------*- +|\ooooo/|+ rr||rr
lllllllll | /\ /\ / | ||o o|| | || |
llll+llll | / \/ \/ | ||o o|| | || |
lllllllll -*------------*- +|/ooooo\|+ | || |
lllllll /| |\ -/ \- | || |
| | || |
| \| |/ -\ /- | || |
| -*------------*- +|\ooooo/|+ | || |
| | /\ /\ / | ||o o|| | || |
| | / \/ \/ | ||o o|| rr||rr
+ -*------------*- +|/ooooo\|+ rrr--rrr
/| |\ -/ \-
_
lllllll \| |/ -\ /-
lllllllll -*------------*- +|\ooooo/|+
llll+llll | /\ /\ / | ||o o||
lllllllll | / \/ \/ | ||o o||
lllllll -*------------*- +|/ooooo\|+
| /| |\ -/ \-
|
|
|
|
+
_
lllllll
lllllllll
llll+llll
lllllllll
lllllll
|
|
|
|
|
+
_
lllllll
lllllllll
llll+llll
lllllllll
lllllll
|
|
|
|
|
+
Второй пример:
qq \/
qq qq qq +-----+
qq qq qq + |
jjjjjjjj qq qq | |
jjjjjj \/ qq qq | |
jjjj +-----+ <---notice that the left side is not connected qq +-------+
jj jj + | <--> <-->
j j | |
jj <> jj | | <--> qq jjjjjjjj
jj jj +-------+ qq jjjjjj
jjjj qq qq jjjj
qq qq jj jj
j j
+---------------------------------------------------------+ jj <> jj
ooooo +---------------------------------------------------------+ jj jj
o yyyyyy jjjj
o ww - notice diagonal border, allowed
o ww jjjjjjjj
o yyyyyy ooooo ooooo jjjjjj
ooooo o yyyyyy o yyyyyy jjjj
o ww o ww jj jj
o ww o ww j j
o yyyyyy o yyyyyy jj <> jj
ooooo ooooo jj jj
jjjj
Решение:
qq ooooo jjjjjjjj <--> \/ +---------------------------------------------------------+
qq o yyyyyy jjjjjj +-----+ +---------------------------------------------------------+
o ww jjjj <--> + |
qq o ww jj jj | |
qq o yyyyyy j j <--> | |
ooooo jj <> jj +-------+
qq jj jj
qq ooooo jjjj \/
o yyyyyy +-----+
qq o ww jjjjjjjj + |
qq o ww jjjjjj | |
o yyyyyy jjjj | |
qq ooooo jj jj +-------+
qq j j
ooooo jj <> jj
qq o yyyyyy jj jj
qq o ww jjjj
o ww
qq o yyyyyy jjjjjjjj
qq ooooo jjjjjj
jjjj
qq jj jj
qq j j
jj <> jj
qq jj jj
qq jjjj
Обратите внимание, что столбцы имеют интервал между символами 1 и выровнены по горизонтали сверху. Также обратите внимание, что каждая конфета находится в точных столбцах, каждая конфета с интервалом в 1 символ.
счет
Это код-гольф, поэтому выигрывает самая короткая (в байтах) программа.
1 Что бы ты еще сделал? Очевидно, вы хотите показать свою удивительную мощь и силу в количестве конфет, которые вы собрали, верно?
2 Я знаю о чем ты думаешь! Рыба должна смотреть через изогнутую миску на вашу конфету, поэтому она все равно будет искажена! Ну, моя рыба жила (до того, как умерла) в прямоугольном аквариуме.