Задача D. Искусственный интеллект

Автор:И. Лудов   Ограничение времени:4 сек
Входной файл:input.txt   Ограничение памяти:64 Мб
Выходной файл:output.txt  

Условие

Программист Петя любит играть в онлайновые игры. Но, из-за постоянной нехватки времени, он не может делать это слишком часто и долго. Поэтому, казалось бы, он обречен всегда иметь в своем распоряжении только слабых персонажей. Однако у него есть план, который непременно поможет ему заполучить одного из самых "прокачанных" героев в его любимой MMORPG Waste of Weekend (WOW).

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

Как известно, во вселенной WOW существует всего два класса персонажей — боец и волшебник — каждому из которых соответствует свой набор наиболее характерных параметров, таких как сила, ловкость, интеллект, мудрость и т. д. При этом небольшие отклонения от стандартного набора вполне допустимы. К сожалению, Петя не знает точных критериев отнесения игрока к тому или иному классу, однако по опыту ему известно, что бойцы хуже противостоят магическим атакам, а волшебники — физическим. И, поскольку его персонаж обладает обеими возможностями ведения боя (хотя и в разной степени — ведь он тоже принадлежит одному из классов), стратегию, которой ИИ будет руководствоваться при принятии решений он собирается основать прежде всего именно на этом принципе.

Для того, чтобы научить свою программу различать игроков двух классов, Петр взломал один из серверов WOW и скачал информацию о некотором множестве персонажей. Поскольку ему не остается ничего другого, кроме как принять гипотезу о нормальности распределения характеристик в каждом из классов, эти данные можно использовать для оценки его параметров. Имея последние, модуль ИИ должен определять с каким противником он имеет дело в каждый момент времени и соответственно выдавать: "CAST SPELL" или "HIT BY SWORD".

Поскольку уровень знаний алгоритмов у Пети не столь высок, как его хакерские способности, ему потребуется помощь!

Известным положительным качеством вселенной WOW является ее высочайшая сбалансированность — ни у одного из классов при прочих равных нет решающего преимущества перед другим. Игроки это знают, и поэтому количество представителей обоих классов приблизительно равно. А значит (априорные) шансы встретить волшебника и бойца всегда равны.

Но если встреча уже произошла, программа не может с точностью выяснить с каким классом она имеет дело. Она лишь может выдать тот, для которого вероятность появления при наблюдаемых характеристиках больше. Именно в этом и состоит ее задача — выбрать класс на основе максимального правдоподобия.

Формат входного файла

Первая строка входного файла содержит числа K, M, N — количество характеристик каждого персонажа, количество персонажей, для которых известен класс и количество персонажей, для которых нужно определить класс, соответственно.

Следующие M строк содержат по K + 1 целому числу, первое из которых равно 0, если персонаж является бойцом, и 1, если волшебником, а остальные задают характеристики.

Оставшиеся N строк содержат по K целых чисел — характеристики персонажей, для которых нужно определить класс.

Формат выходного файла

В выходной файл выведите N строк. Каждая из них должна содержать (без кавычек) "CAST SPELL", если соответствующий персонаж является бойцом и "HIT BY SWORD", если волшебником.

Ограничения

1 ≤ K, ≤ 10

1 ≤ N, M ≤ 1000

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
2 10 10
0 333 245
0 359 234
1 589 184
0 486 215
1 684 81
0 362 288
0 405 212
1 730 139
1 786 0
0 340 293
863 732 
0 120 
436 129 
823 318 
198 643 
605 471 
297 656 
264 636 
616 490 
595 472 
HIT BY SWORD
CAST SPELL
CAST SPELL
HIT BY SWORD
HIT BY SWORD
HIT BY SWORD
HIT BY SWORD
HIT BY SWORD
HIT BY SWORD
HIT BY SWORD

0.037s 0.008s 15