Задача №111478. Каркассон
Недавно Петя купил себе новую увлекательную игру. Настольная игра «Каркассон» состоит из N карточек, которые по некоторым правилам выкладываются на игровое поле.
На каждом ходу игрок берет одну из карточек и тут же кладет ее на поле, после чего передает ход следующему игроку (последний игрок передает ход первому). Игра заканчивается, когда заканчиваются карточки.
Игра пользуется большой популярностью среди друзей Пети, поэтому он очень боится потерять часть карточек и периодически проверяет, все ли карточки на месте. Делает он это раз в две игры, так как уверен, что между первой и второй игрой из пары карточки потеряться не могли (то есть обе партии из пары игрались с равным, но возможно меньшим, чем N количеством карточек). Проверка происходит следующим образом: перед началом игр, зная сколько человек будут принимать участие в обеих играх и количество карточек N, Петя вычисляет, какой игрок должен сделать последний ход (как опытному программисту, знающему, что такое остаток от деления, это не составляет ему труда). Далее он записывает, какой игрок делает последний ход в каждой из игр на самом деле, и сравнивает получившиеся результаты. Если Петины расчеты не сходятся с фактическими результатами, значит обе партии игрались с меньшим, чем N количеством карточек.
Однажды, в очередной раз пользуясь своей безотказной системой, Петя записал для каждой пары партий количество участников и номера игроков, закончивших игры, в отдельную строчку. Но его друг, решив подшутить, исправил в записях несколько чисел таким образом, чтобы ситуация, описанная в исправленных строках не могла произойти, сколько бы карточек ни было потеряно. Другими словами, сколько бы карточек ни использовалось в обеих партиях, при заданном количестве игроков не могло бы сложиться ситуации, когда последний ход и в первой, и во второй играх делают именно те игроки, номера которых записаны в исправленных строках.
Помогите Пете найти исправленные строки.
В первой строке вводятся числа N — количество карточек в игре и M (1 ≤ M ≤ 10) — количество пар сыгранных в «Каркассон» партий. Далее следуют M строк, в каждой из которых записано по 4 числа через пробел: g1 — количество игроков в первой игре из пары, r1 (1 ≤ r1 ≤ g1) — номер игрока, сделавшего последний ход в первой игре из пары, g2 — количество игроков во второй игре из пары, r2 (1 ≤ r2 ≤ g2) — номер игрока, сделавшего последний ход во второй игре из пары. Все числа во входных данных не превосходят 2 * 109.
Для каждой пары партий выведите «YES», если соответствующая строка исправлена и «NO» иначе.
100 3
2 1 3 3
8 2 4 1
8 2 4 2
NO
YES
NO
В первом случае указанный результат возможно получить, если потеряна 1 карточка, то есть если пара партий игралась с 99 карточками.
Во втором случае указанный результат получить невозможно. Невозможно получить такое количество карточек, чтобы в случае, когда играют 8 человек, последний ход сделал второй игрок, а в случае, когда тем же количеством карточек играют 4 человека, последний ход сделал первый игрок.
Ситуация, сложившаяся в третьем случае, могла получиться в результате потери 2-х карточек (играли с 98 карточками).