Містер Джонс хоче зробити подорож на своєму велосипеді. Він хоче відвідати кілька міст у довільному порядку, але його маршрут не повинен перетинати його самостійно, оскільки він ненавидить бути на одному і тому ж місці двічі у свої свята. Оскільки він по-справжньому любить їздити на велосипеді, тривалість його маршруту абсолютно не має значення, але він не любить їздити по пейзажу без цілі. Маршрут, який йому подобається, проходить з міста по прямій лінії до іншої, без об’їзду.
Оскільки містер Джонс - пристрасний гольфіст з кодом, він хоче, щоб ви знайшли програму, яка планує для нього поїздку в обидва кінці з урахуванням набору міст. Вхід має форму A (B|C)
. A
назва міста B
та C
його координати. Ви можете припустити, що координати є позитивними та меншими ніж 1000. Набори даних для міст розділені рядками. Ось приклад того, як може виглядати вклад прикладу:
Деякі міста (1 | 10) Близькість (3 | 4) Де б не було (7 | 7) Головна (5 | 1)
Містер Джонс не педантичний, він просто хоче мати корисну програму. Таким чином, ви можете самостійно вирішити, як виглядає результат, доки він відповідає цим критеріям:
- Вихід - карта міст з маршрутом, прокресленим між ними. Якщо щось правильно, маршрут не повинен перетинатись і повинен закінчуватися там, де він почався
- Координати, як у звичайному програмуванні: (1 | 1) знаходиться в куті СЗ. Додайте вид лінійки до межі карт, щоб полегшити її читання
- Назви міст мають бути записані на карті, але сміливо використовуйте абревіатури, що пояснюються десь на карті
- Карта може бути як ASCII-мистецтвом, так і зображенням
- Зберігайте результат читабельним
Вихід може виглядати приблизно так:
1234567 1 D 2 * * 3 * * 4 B * 5 * * 6 * * 7 * С 8 * ** 9 * * 10А ** A: Деякі міста Б: Гострота С: Куди б не було Д: Головна
Перемагає програма з найменшим числом лічильників. Я не зараховую параметри до компілятора / інтерпретатора, якщо вони потрібні для компіляції, але, будь ласка, не зловживайте цим правилом. Діють звичайні правила гольфу.
Ось ще одна перевірка. Вихідні дані не повинні відповідати моїм, і ви не повинні вибирати той самий шлях, що і я. Вихід складається вручну і показує можливий вихід. Вхід:
додому (5 | 7) супермаркет (13 | 12) парк (15 | 5) новий майданчик (9 | 16) будинок друга (20 | 11) старий замок (14 | 21) річка (1 | 20) пляж (10 | 1) кінотеатр (21 | 18) ліс (23 | 7) маленький острів (21 | 1) музей кодового гольфу (6 | 25) аеропорт (18 | 25) чайний магазин (24 | 14) ресторан (24 | 22) великий міст (3 | 12) Будівля ТА (25 | 9)
І це приклад результату:
1111111111222222 1234567890123456789012345 1 Н * * К 2 * * * * 3 * * * * 4 * * ** * 5 * С * 6 * * 7 AJ 8 * * 9 * Q 10 * * 11 * *** E * 12 PB *** * * 13 * * * * 14 * * * N 15 * * * * 16 * D * * 17 * * * * 18 * * я * 19 * * * * 20G * * * 21 * F * * 22 * ** * О 23 * ** * ** 24 * ** * * 25 л ** М ** A: додому Б: супермаркет С: парк Д: нова площа Е: будинок друга F: старий замок Г: річка Н: пляж Я: кіно J: ліс К: маленький острів Л: музей коду-гольфу М: аеропорт Н: чайний магазин O: ресторан П: великий міст Q: будівництво SO
Я не є носієм англійської мови. Сміливо виправляйте мою мову та граматику, якщо це необхідно.