Отель <<Континенталь>>
시간 제한1초메모리 제한1024 MB
직사각형이 계속 직사각형을 유지하도록 도형을 붙여 나갈 때, 마지막 직사각형의 가능한 크기를 모두 구하거나 기록이 모순임을 판정한다.
문제
Отель <<Континенталь>>, в котором случается достаточно много ключевых событий в жизни Джона Уика, имеет долгую историю. И построен он был, несмотря на все ресурсы Правления Кланов и Старейшины, не в один день.
Всего отдель был построен за дней. В первый день было построено основание <<Континенталя>> в виде прямоугольника размером . Затем в -й день к текущему основанию с краю достраивался еще один блок размером так, чтобы основание оставалось прямоугольником.
Иными словами, текущее основание и прямоугольник размером присоединялись друг к другу одинаковой стороной. Прямоугольник мог быть повернут на и присоединен к любой из сторон текущего основания, если сам имел равную ей сторону.
Джон, чтобы незаметно пробраться в <<Континенталь>> к Винстону, добыл записи о всех днях постройки. Теперь он хочет понять, правдивы ли эти записи, и, если да, какими могут быть размеры текущего <<Континенталя>>.
입력
В первой строке ввода дано единственное число --- количество дней постройки отеля ().
В -й из следующих строк через пробел даны два целых числа и --- размеры прямоугольника, присоединяемого к основанию в -й день (). Обратите внимание, что размеры прямоугольников могут не помещаться в -битный целочисленный тип данных int.
출력
В первой строке выведите одно целое число --- количество возможных вариантов размеров <<Континенталя>>. Если в записях есть ошибка, и отель не мог быть построен из указанных прямоугольников, считайте, что .
В -й из следующих строк выведите через пробел два числа --- размеры отеля в -м варианте.
Варианты можно выводить в любом порядке. На одной строке длину и ширину также можно вывести в любом порядке.