Ограничения: время – 2s/4s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
При написании программы, проверяющей ответ участника для предыдущей задачи "Отрезки на
прямой возвращаются" (прочитайте её условие!), жюри столкнулось с трудностями, превосходящими
сложность самой задачи. С мыслью "почему бы и нет" написание такой программы было решено
также включить в комплект задач.
Проверяющей программе доступно три блока информации:
- входные данные в формате, описанном в условии предыдущей задачи,
- ответ некоторого абстрактного участника в формате, также описанном в предыдущем условии,
- ответ жюри.
Ваша задача – написать программу, которая по этим данным определит, правильно ли программа
абстрактного участника посчитала ответ.
Вход состоит из трёх частей. Первая часть – число `N` (`1\ ≤\ N\ ≤\ 100\ 000`) и следом `N` пар `a_i,\ b_i`
(`-10^9\ ≤\ a_i\ <\ b_i\ ≤\ 10^9`). Далее идут `N` чисел, каждое из которых от 0 до `N`, `i`-е равно номеру отрезка,
являющегося одним из непосредственно содержащих `i`-й, либо нулю – по мнению абстрактного
участника. Далее идут ещё `N` чисел в том же формате – ответ жюри на эту задачу.
Входные данные всегда корректны. Это означает, например, что ответ участника не нужно
проверять на соответствие формату и что ответ жюри точно правильный.
Выведите `N` строк. В `i`-й строке должен быть вердикт для `i`-го отрезка. Выведите OK, если ответ
абстрактного участника правильный, и WA – иначе.
Пример ввода
4
2 3
0 4
1 6
0 5
2 2 1 0
3 4 0 0
Пример вывода
OK
WA
WA
OK
Источник: Московская открытая олимпиада школьников по программированию, 2010/11 учебный год