Заснований на Chunky vs. Smooth Strings .
Шкірки /\_/\/\__/\/\/\/\_/\_/\цікаво робити на клавіатурі, коли вам справді нудно. Але не всі зубці створюються рівними. Деякі зубці гладкі, наче \___/, а деякі кучеряві, схожі /\/\/\/\. Інші просто розбиті прямо////_\\\
Усередині кожної викрутки Nперсонажів знаходяться N-1викрутки-переходи. Кожен викрій-стик класифікується на один з трьох типів:
Плавний (кут> "90 градусів"):
\_ __ _/Корінець (кут = "90 градусів")
/\ \/Зламаний (усе, що не підключається)
// \\ /_ _\
Давайте визначимо гладкість бути частка з'єднань , які є гладкими, з chunkiness і розбитості , визначеної аналогічно. Кожне значення варіюється між 0і 1. Сума гладкості, чіпкості та ламкості косинки завжди дорівнює 1.
Наприклад, у білокрилки /\/\\_//\_є 3 плавних перехрестя, 4 кускоподібних перехрестя і 2 розбиті переходи. Таким чином, вона 0.3333гладка, 0.4444грудка і 0.2222зламана.
Порожні рядки та рядки, що містять лише один символ, мають невизначені значення, весь вхід буде не менше 2 символів.
Виклик
Напишіть програму, яка займає викрутку довільної довжини і виводить будь-які два значення її гладкості, чіпкості та зламаності.
- Ви можете написати програму або функцію з введенням через STDIN, командний рядок або як аргумент рядка.
- Ви можете припустити, що вхід має принаймні довжину> = 2 і складається лише з символів
/\_із необов'язковим новим рядком. - Роздрукуйте (або поверніть, якщо функція), два плавають з точністю щонайменше до 4 десяткових знаків, округлими або усіченими. Якщо справжнє значення є
2/3, прийнятні значення включають будь-яке значення між0.6666і0.6667, навіть, подібними речами0.666637104. Якщо точне значення є1/3, будь-яка відповідь, що містить,0.3333є дійсною. Ви можете залишити проміжні нулі або початковий нуль, якщо значення менше одиниці. - Виведіть будь-яку пару з трьох значень, як вам зручніше, просто не забудьте вказати, які два та в якому порядку.
Виграє найкоротший код у байтах.
Приклади
/\/\\/\//\\→ гладкість 0, незграбність 0.7, розмитість0.3
_/\\_/\\/__/\\\//_→ гладкість 0.29411764705, незграбність 0.29411764705, розмитість0.41176470588
//\\__/_\/→ гладкість 0.3333333, незграбність 0.2222222, розмитість0.4444444
Питання про бонус: якому ви віддаєте перевагу, гладкі, грубі або зламані викрутки?