(Сподіваємось, це все-таки подяка для вас)
Ви отримали індичку за вечерю подяки, але не знаєте, як її рівномірно розподілити. Проблема в тому, що деякі люди їдять більше, ніж інші, тому потрібно знайти рішення
Вхідні дані
Буде два входи. Першим стане мистецтво ассі різних людей.
o
o \|/
\|/ |
| |
/ \ / \
технічні характеристики ascii-art
Кожна людина займає ширину 3 колони. Кожна людина відокремлена однією колоною пробілів. Сама верхня частина кожної людини - це o
. Внизу o
, зсув на х 1
і -1
в х, є \
і /
, відповідно. Від o
другого до останнього рядка вхідних |
значень кількість їх на людину - це їх "зріст". Єдині дані, які вам знадобиться витягти у кожної людини, - це їх «зріст».
Завжди знайдеться хоча б одна людина. У кожної людини завжди принаймні 2-х зріст. Максимальна висота, з якою повинна працювати ваша програма, принаймні - 64.
Якщо ви хочете, щоб на вкладеному вкладені пробілами утворився прямокутник, вкажіть це у своїй відповіді.
Другий вхід - індик. Індичка насправді не індичка, більше NxM
розмірів індика. Якщо другий вхід є 3x2
, то індичка має розміри 3 * 2, загальною площею 6.
Вихідні дані
Вихідним може бути список або найближча альтернатива вашої мови (наприклад, масив). Ви також можете вивести рядок із значеннями, розділеними пробілами.
Значення для кожної людини слід виводити в тому порядку, в якому вони були введені.
Виклик
Ваша мета - розділити площу індички серед людей.
Приклад сценарію:
Припустимо, це двоє людей з висотою 3
і 6
, відповідно. Якщо є індичка 5x3
. Загальна площа індички, яку потрібно буде розподілити, - це 15
.
Тепер, як би ви розподілили його серед усіх? Ось як:
the_persons_height
TurkeyForAPerson = -------------------- * turkey_area
sum_of_all_heights
Це означає, що для першої особи з ростом 3
вони отримають 3/9*15
індичку, або 5
, другу людину з ростом 6
вони отримають 6/9*15
або 10
індичку.
Вихідні дані
Результат повинен складатися виключно з цифр і .
, якщо ви не вирішите скористатися бонусом. У цьому випадку він може складатися лише з цифр, пробілів ( ) та косою рисою (
/
).
Повний приклад
Вхід:
6x5
o
|
o \|/
\|/ |
| |
| |
/ \ / \
Вихід:
11.25 18.75
Бонуси
-20% Бонус: Ви виводите дріб (повинен бути спрощений), не має значення, чи це змішана чи неправильна частка.
Оцінка балів
Це код-гольф, тому найкоротший код у байтах виграє!