저녁 뭐 먹지?
시간 제한2.5초메모리 제한1024 MB
각 친구가 준 두 조건 중 하나는 반드시 만족해야 한다는 조건을 누적하면서, 지금까지의 모든 조건을 동시에 만족하는 메뉴가 있는지 매번 확인합니다.
문제
선아와 친구들은 함께 저녁을 먹으러 가는 중이다. 그때 친구 한 명이 금지된 질문을 하고 말았다.
"저녁 뭐 먹지?"
심각할 정도로 우유부단한 선아와 친구들은 저녁 메뉴 결정을 서로 떠넘기게 되었다. 이러다 다 같이 굶겠다는 생각이 든 선아가 다음 방법을 제안했다.
선아를 포함한 명의 친구가 있다. 메뉴는 개 이상의 특징을 가지며, 각 특징은 이상 이하인 정수로 표현된다. 한양대학교 근처에는 식당이 굉장히 많아서, 가능한 모든 특징의 조합마다 정확히 그 조합을 가진 메뉴가 존재한다. 각 친구는 번부터 번까지 순서대로 다음 두 가지 행동 중 하나를 수행한다.
1: 저녁 메뉴에 대한 의견으로 두 정수 와 를 제시한다. 각 의견은 절댓값이 이상 이하인 정수이며, 이 절댓값이 메뉴의 특징을 나타낸다. 값이 양수이면 그 특징을 가져야 하고, 음수이면 그 특징을 가지면 안 된다.2: 지금까지 의견을 제시한 친구들을 모두 만족시키는 메뉴가 존재하는지 확인하고 결과를 알려준다. 어떤 친구를 만족시키려면 그 친구가 제시한 두 의견 중 최소 하나가 메뉴에 반영되어야 한다.
선아와 친구들의 행동이 주어질 때, 행동 2의 결과를 출력하는 프로그램을 작성하라.
입력
첫 번째 줄에 선아를 포함한 친구의 수 이 주어진다. ()
두 번째 줄부터 개의 줄에 걸쳐 번 친구부터 번 친구까지 순서대로 각 친구의 행동 정보가 한 줄에 하나씩 주어진다. 행동 1인 경우 공백으로 구분된 세 정수 , , 가 주어진다. 행동 2인 경우 정수 2 하나만 주어진다. 행동 2는 적어도 한 번은 주어진다. ()
출력
행동 2가 입력될 때마다, 그 시점까지 의견을 제시한 친구들을 모두 만족시키는 메뉴가 존재하면 YES DINNER를, 존재하지 않으면 NO DINNER를 출력한다.