Я ненавиджу роздуття коду!
Тому я вирішив замінити свою систему Windows 7 на версію для гольфу. Однак я знаю, що це непросто, тому давайте спочатку побудуємо прототип. Він візьме список вікон від користувача та покаже їх за допомогою псевдо графічного відображення на стандартному виході.
Наприклад: введення користувача:
0,0,15,10 15,10,20,15 10,13,15,15 9,1,16,3 17,5,20,7 11,2,17,4 15,4,19,6 13,3,18,5
Код Golf® Window Manager ™ виводить:
┌───────────────┐ │ :::::::: ┌─────┴┐ │ :::::::: │: ┌────┴┐ │ :::::::: └─┤: ┌───┴┐ │ :::::::::: └─┤ :::: ├┐ │ :::::::::::: └─┬──┘├┐ │ :::::::::::::: ├─┬─┘│ │ :::::::::::::: │ └──┘ │ :::::::::::::: │ │ :::::::::::::: │ └────────────────────┐ │ :::: │ │ :::: │ ┌────┤ :::: │ │ :::: │ :::: │ └────┴────┘
Вхід:
- Взятий із стандартного вводу (або, якщо у вашій системі немає
stdin
, будь-якого методу, який може забезпечити кілька рядків введення) - Кожен рядок містить 4 числа, розділені комами - координатами вікна
- Перші два числа: верхній лівий кут; останні два числа: правий нижній кут
- Використання
x,y
позначень
Вихід:
- Напишіть його на стандартний висновок (або, якщо у вашій системі немає
stdout
, нічого, що відображає однобічний текст) - Для малювання меж вікна використовуйте символи для малювання коробки з Кодової сторінки 437
- Вікна, вказані пізніше у вхідних даних, затемнюють ті, які були зазначені раніше
- Заповніть вікна символом двокрапки:
:
- Провідні та кінцеві простори в порядку, якщо вони не порушують вирівнювання вікон
Примітки:
- Максимальна роздільна здатність, яку я хочу підтримати: 76 (горизонтальна) на 57 (вертикальна)
- Не потрібно підтримувати поганий вклад
- Максимальна кількість вікон: 255 (якщо вам потрібен ліміт)
- Моя
cmd
оболонка Windows 7 за замовчуванням відображає 437 символів кодової сторінки; якщо хтось має спосіб це зробити на Linux (використовуючиxterm
чи будь-що інше), будь ласка, опишіть його тут
Для довідки, символьні коди:
┌da ─c4 ┬c2 ┐bf
│b3 :3a │b3 │b3
├c3 ─c4 ┼c5 ┤b4
└c0 ─c4 ┴c1 ┘d9
Всього: 12 різних персонажів.
javascript:$('pre').css('line-height','1em')