Це просте: роздрукувати діаграму ASCII Ганта .
З огляду на діапазони завдань (час початку - кортежі кінця часу), надрукуйте шкалу Ганта у вигляді -
символів для кожної тривалості завдання - кожне завдання у новому рядку.
Приклад
Скажіть, мої діапазони завдань є 28->35, 34->40, 39->44
, Гант виглядатиме так:
-------
------
-----
Технічні умови
- Ви можете написати повну програму, названу функцію або анонімну функцію.
- Ваша програма / функція повинна приймати завдання через STDIN або як аргументи .
- Кожне завдання повинно бути представлене у вигляді рядка,
start->end
деstart
іend
є Цілі особи . Завдання розділені пробілами або комами. Крім того , ви можете отримати його як набір цілих чисел, або як масив / колекція з 2 цілих чисел. (Наприклад, в JavaScript ви можете отримати його як[start,end]
- це дозволено). - Будь-яка негативна кількість завдань (аргументів) повинна підтримуватися.
Щоб було зрозуміло, не допускається єдиний аргумент збору завдань. Ви можете або проаналізувати один аргумент рядка, або підтримати аргументи з нульовим або більше завданням. Де завдання - кортеж або колекція розміром 2.- Ви можете припустити, що буде надано лише дійсне введення. Це означає, що кожне завдання має позитивну тривалість.
- Повернене значення не має значення, ваш код повинен надрукувати часову шкалу на STDOUT.
- Вихідні дані: на завдання,
start
пробіли, за якими(end-start)
пробірки й а\n
. - Зайве говорити, що вихідні рядки слід упорядковувати відповідно до порядку введення (завдання).
- Пробіли перед
\n
дозволеними, якщо це допоможе вам.
Тестові справи
Input:
(empty)
Output:
(empty)
Input:
0->7,5->6,3->6
Output:
-------
-
---
Input:
5->20,5->20,2->10,15->19
Output:
---------------
---------------
--------
----
Перемога
- Це код-гольф тому виграє найменша довжина коду (у байтах).
- Традиційно розрив краватки - це раніше повідомлення.
- "Стандартні лазівки вже не смішні".
-----
EDIT
Оскільки багато хто з вас зрозуміли, що дозволено мати один аргумент збору задач, і оскільки між цим та початковою вимогою varargs немає багато різниці , тепер дозволено мати один аргумент колекції, якщо ви не хочете використовувати параметр varargs, або якщо ваша мова не підтримує varargs.
arguments
функцію, але не можете вважати, що arguments[0]
це масив завдань.
To make it clear...
) зовсім не зрозумілий.