Олимпиадный тренинг

Задача . C. Кволы


Снарк и Филипп готовят задачи на предстоящие кволы. У них есть банк из n задач, они хотят выбрать из него любое непустое подмножество задач.

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

Определите, можно ли выбрать подмножество задач так, чтобы каждая из команд не знала хотя бы половину задач.

Входные данные

Первая строка содержит два целых числа n и k (1 ≤ n ≤ 105, 1 ≤ k ≤ 4) — число задач и число опытных команд на кволах. Следующие n строк содержат по k чисел, каждое из которых либо 0, либо 1. j-е число в i-й строке равно 1, если j-я команда знает i-ю задачу, и 0 иначе.

Выходные данные

Выведите «YES» (без кавычек), если можно выбрать непустой набор задач, удовлетворяющий ограничениям, и «NO» в противном случае.

Вы можете выводить каждую букву как заглавной, так и строчной («YeS» и «yes» можно вывести вместо «YES»).

Примечание

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

Во втором примере можно взять первую и третью задачи.


Примеры
Входные данныеВыходные данные
1 5 3
1 0 1
1 1 0
1 0 0
1 0 0
1 0 0
NO
2 3 2
1 0
1 1
0 1
YES

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя