공정한 분배
시간 제한1초메모리 제한1024 MB
건물마다 1층 높이 G와 주거층 높이 R이 주어질 때, 두 사람에게 나누어 각자 받은 건물 높이의 합을 같게 만들 수 있는지 판단합니다.
문제
기업가에게 설계도가 개 있습니다. 각 설계도는 건물의 종류 하나를 설명합니다. 설계도마다 두 정수 와 로 건물의 높이를 지정합니다.
: 1층의 높이. 0일 수 있으며, 이때 건물에는 1층이 없습니다.
: 주거층 하나의 높이. 모든 건물에는 주거층이 적어도 하나 있습니다.
기업가는 이 설계도들을 두 자녀인 앨리스와 밥에게 나누어 주려고 합니다. 각 자녀는 자신에게 배정된 설계도마다 건물을 정확히 하나씩 짓고, 건물마다 주거층 수를 정합니다.
기업가는 한쪽을 편애하지 않으려고 합니다. 그래서 공정한 분배를 찾고 있습니다. 공정한 분배란 각 자녀가 짓는 건물 높이의 합이 같도록 건물을 지을 수 있는 분배를 뜻합니다. 공정한 분배가 존재하는지 판단하세요.
개의 설계도를 가진 예를 보겠습니다.
- , (가능한 높이는 )
- , (1층 없음, 가능한 높이는 )
- , (가능한 높이는 )
이 경우 두 번째 설계도를 앨리스에게, 나머지를 밥에게 주는 것이 공정한 분배의 한 예입니다. 앨리스는 설계도 하나만 받지만 두 번째 건물의 주거층을 2개로 해서 높이 을 만들 수 있습니다. 밥은 첫 번째 건물의 주거층을 2개(높이 ), 세 번째 건물의 주거층을 1개(높이 )로 할 수 있습니다. 이렇게 하면 각 자녀가 짓는 건물 높이의 합은 이 됩니다.
입력
첫째 줄에 설계도의 개수 ()이 주어집니다.
이어지는 개의 줄에는 각각 두 정수 ()와 ()이 주어집니다. 각각 해당 설계도의 1층 높이와 주거층 높이입니다. 모든 설계도의 1층 높이의 합은 이하입니다.
출력
공정한 분배가 존재하면 대문자 Y를, 존재하지 않으면 대문자 N을 한 줄에 출력합니다.