Ви проводите Олімпійські ігри, і вам потрібно зібрати фантастичний басейн заради цього випадку, але наглядові органи часто змінюють свою думку щодо розмірів, і потрібен швидкий спосіб відновити його із потрібним розміром!
Враховуючи два цілих числа, L
і x
, ваше завдання - побудувати басейн довжиною L
і x
смугами.
Як будується басейн?
Він містить внутрішній квадрат, горизонтальні стінки якого виготовлені з
L
послідовних тире (-
), а вертикальні стінки виконані з3x - 1
брусків (|
). Крім того,+
у кожному куті лежать 4 знаки. Давайте маємо приклад (L = 10, x = 2
):+ ---------- + | | | | | | | | | | + ---------- +
Кожна смуга має ширину 2 вертикальних одиниці. Внутрішній квадрат заповнений
x-1
роздільниками смуг, що складаються зL
горизонтально послідовних:
символів. Після розміщення роздільників смуги руху наш басейн повинен виглядати так:+ ---------- + | | | | | :::::::::: | | | | | + ---------- +
Басейн також містить прокладки (зовнішній квадрат), горизонтальні стіни яких (L + 4)
-
s і вертикальні стіни яких (3x + 1)|
s, що оточують внутрішній квадрат:+ -------------- + | + ---------- + | | | | | | | | | | | :::::::::: | | | | | | | | | | | + ---------- + | + -------------- +
І це наш басейн ** з олімпійськими розмірами **!
Технічні характеристики:
З метою дизайну та функціональності ви гарантуєте, що
100 ≥ L ≥ 10
і15 ≥ x ≥ 2
.Вихід повинен бути точно таким, як показано. Виведення "вертикально вбудованого" * пулу заборонено.
Доступні пробіли та провідні місця.
Ви можете взяти вклад і надати вихід за допомогою будь-якого стандартного методу .
Застосовуються лазівки за замовчуванням .
Приклади / Тестові приклади:
L = 20, x = 3 + ------------------------ + | + -------------------- + | | | | | | | | | | | ::::::::::::::::::::: | | | | | | | | | | | | ::::::::::::::::::::: | | | | | | | | | | | + -------------------- + | + ------------------------ + L = 50, x = 5: + ------------------------------------------------- ----- + | + ------------------------------------------------- - + | | | | | | | | | | | :::::::::::::::::::::::::::::::::::::::::::::::::::: : | | | | | | | | | | | | :::::::::::::::::::::::::::::::::::::::::::::::::::: : | | | | | | | | | | | | :::::::::::::::::::::::::::::::::::::::::::::::::::: : | | | | | | | | | | | | :::::::::::::::::::::::::::::::::::::::::::::::::::: : | | | | | | | | | | | + ------------------------------------------------- - + | + ------------------------------------------------- ----- + L = 10, x = 15 + -------------- + | + ---------- + | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | | :::::::::: | | | | | | | | | | | + ---------- + | + -------------- +
Це код-гольф , тому найкоротший код у байтах виграє!
* Вода може витікати, якщо вона побудована вертикально: P
** Так, я знаю, що чим більше смуг і коротший басейн, тим менше малюнок виглядає як басейн!
x>=L
??
L=10
і x=15
? Чи не було б більше доріжок, ніж можна було б розмістити в басейні? Я міг би нерозуміти наміри