211. Встречи

Не решаласьСредняя

Чтобы не мешать коллегам на рабочем месте громкими обсуждениями, ребята назначают встречи на определенное время и бронируют переговорки. При бронировании нужно указать дату и время встречи, её длительность и список участников. Если у кого-то из участников получается две встречи в один и тот же момент времени, то в бронировании будет отказано с указанием списка людей, у которых время встречи пересекается с другими встречами.

Вам необходимо реализовать прототип такой системы.

Формат ввода

В первой строке входного файла содержится одно число $n$ $(1 \leq n \leq 1000)$ — число запросов.

В следующих $n$ строках содержатся запросы по одному в строке. Запросы бывают двух типов:

  • APPOINT $day$ $time$ $duration$ $k$ $names_1$ $names_2$ ... $names_k$
  • PRINT $day$ $name$
  • $day$ — номер дня в 2018 году $(1 \leq day \leq 365)$;
  • $time$ — время встречи, строка в формате HH:MM $(08 \leq HH \leq 21, 00 \leq MM \leq 59)$;
  • $duration$ — длительность встречи в минутах $(15 \leq duration \leq 120)$;
  • $k$ — число участников встречи $(1 \leq k \leq 10)$;
  • $names_i$, $name$ — имена участников — строки, состоящие из маленьких латинских букв $(1 \leq |name| \leq 20)$.

У всех коллег уникальные имена. Кроме того гарантируется, что среди участников одной встречи ни одно имя не встречается дважды.

Формат вывода

Если удалось назначить встречу (первый тип запросов), выведите OK.

Иначе выведите в первой строке FAIL, а в следующей строке через пробел список имен участников, для которых время встречи пересекается с другими встречами, в том порядке, в котором имена были даны в запросе.

Для второго типа запросов выведите для данного дня и участника список всех событий на данный момент в этот день в хронологическом порядке, по одному в строке, в формате

$HH:MM\,duration\,names_1\,names_2\,\ldots\,names_k$

где имена участников следуют в том же порядке, что и в исходном описании встречи. Если событий в данный день для этого человека нет, то ничего выводить не нужно.

Ограничения

Ограничение времени

1 с

Ограничение памяти

256 МБ

Пример 1

Ввод
7
APPOINT 1 12:30 30 2 andrey alex
APPOINT 1 12:00 30 2 alex sergey
APPOINT 1 12:59 60 2 alex andrey
PRINT 1 alex
PRINT 1 andrey
PRINT 1 sergey
PRINT 2 alex
Вывод
OK
OK
FAIL
alex andrey 
12:00 30 alex sergey
12:30 30 andrey alex
12:30 30 andrey alex
12:00 30 alex sergey

Теги

Нужно войти, чтобы отправить решение.Войти