Настав час обіду, я голодний, і я прийшов у ваш суші-бар. Ви шеф-кухар суші, і вам потрібно створити повну програму або функцію, щоб зробити мене суші!
Відмова: Зображення призначене лише для ілюстрації та не обов'язково відображає точний продукт.
Хоча інгредієнти у вас обмежені (через страйк водіїв вантажівки) для мене це буде добре.
В складі інгредієнтів (у великій кількості) є:
- Норі морські водорості (зроблені з:
\/_¯|
) - Сирий тунець (
T
) - Сира лосось (
S
) - Сире авокадо (
A
) - Райс суші (
o
)
За допомогою цих інгредієнтів ви зможете зробити кілька приємних макісів для своїх клієнтів.
Ваше мінімальне замовлення - 1 долар за 2 макіси, ви робите макіси лише в парах і приймаєте лише цілі номери як оплату. Ви приймаєте замовлення на суму до 50 доларів на особу (загальний внесок), оскільки ви самотні і повинні задовольняти всіх своїх клієнтів.
Вам потрібно буде отримати замовлення клієнта зі стандартного вводу в будь-якому розумному форматі, наприклад: [1,T],[2,S],[3,A]
це означає, що вам потрібно вивести:
- Два тунця Макіс
- Чотири лосося Макіс
- Шість авокадо Макіс
Один макі зроблений саме так:
_____
/ooooo\
|ooTTToo|
|\ooooo/|
| ¯¯¯¯¯ |
\_____/
А оскільки ви прекрасний шеф-кухар, ви завжди розставляєте макі з шматками будь-якого типу у квадратній формі або максимум у прямокутній формі (якомога ближче до квадрата) без прогалин. Загальна форма також квадратна або прямокутна, максимально наближена до квадрата з огляду на вищезазначене обмеження, без прогалин.
Приклад входів / виходів:
Input: [1,T],[2,S],[3,A]
Valid Output:
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
Valid Output:
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooAAAoo||ooTTToo||ooTTToo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
Not Valid Output:
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooAAAoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooAAAoo||ooTTToo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
Not Valid Output:
_____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/
Not Valid Output:
_____ _____ _____ _____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/ \_____/
Input: [1,S]
Valid Output:
_____ _____
/ooooo\ /ooooo\
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
Valid Output:
_____
/ooooo\
|ooSSSoo|
|\ooooo/|
| ¯¯¯¯¯ |
\_____/
_____
/ooooo\
|ooSSSoo|
|\ooooo/|
| ¯¯¯¯¯ |
\_____/
Input: [1,A],[1,T],[1,S]
Valid Output:
_____ _____ _____
/ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooTTToo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/
_____ _____ _____
/ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooTTToo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/
Valid Output:
_____ _____ _____
/ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/
_____ _____ _____
/ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/
Input: [1,T],[1,A],[2,S]
Valid Output:
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
Valid Output:
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/
Valid Output:
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooTTToo||ooTTToo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
Input: [1,T],[1,S],[7,A]
Valid Output:
_____ _____ _____ _____ _____ _____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/
_____ _____ _____ _____ _____ _____ _____ _____ _____
/ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\ /ooooo\
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/ \_____/
Valid Output:
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
_____ _____
/ooooo\ /ooooo\
|ooTTToo||ooTTToo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
\_____/ \_____/
Правила:
- Це код-гольф, тому найкоротший код виграє.
- Стандартні лазівки заборонені.
[1,T],[2,S],[3,A]
, чи дійсно чи недійсно їх розташувати так, щоб верхній рядок був TTSA, другий рядок - SSSA, а нижній - AAAA? Не ясно, чи задовольняє це "всі подібні типи, близькі один одному"; вони, безумовно, зворушливі.