영화관 좌석 배치
시간 제한2초메모리 제한64 MB
예약석이 표시된 8석짜리 R개 행에 S명의 단독 관객과 C쌍의 커플을 이웃과 앞좌석 비움 규칙에 맞게 배치할 수 있는지 판단합니다.
문제
신해빈이 운영하는 영화관에는 좌석이 8개씩 놓인 줄이 개 있다. 일부 좌석은 이미 예약되어 있고, 영화관에 들어오는 손님은 세 종류다.
- 예약하고 온 손님
- 예약하지 않고 온 솔로
- 예약하지 않고 온 커플 (커플은 당연히 나란히 앉고 싶어 한다)
예약하고 온 손님은 예약한 좌석에 그대로 앉으면 된다. 신해빈은 남은 솔로 명과 커플 쌍을 다음 조건에 맞게 앉혀야 한다.
- 솔로는 예약되지 않은 좌석에만 앉는다.
- 솔로는 같은 줄에서 자기 양옆에 다른 사람이 앉는 것을 싫어한다.
- 솔로는 자기 바로 앞 좌석에 다른 사람이 앉아 있는 것을 싫어한다.
- 커플은 같은 줄에서 예약되지 않은 좌석 두 개에 나란히 앉아야 한다.
- 커플은 파트너를 뺀 다른 사람이 같은 줄에서 자기 옆에 앉는 것을 싫어한다.
- 커플은 자기들 바로 앞 좌석에 다른 사람이 앉아 있는 것을 싫어한다.
바로 앞 좌석은 바로 앞 줄의 같은 열에 있는 좌석을 말한다. 위 조건에서 말하는 사람에는 예약 손님, 솔로, 커플이 모두 들어간다. 반대로 예약 손님은 너그러워서 이 조건을 하나도 따지지 않는다.
예약된 좌석의 위치와 솔로의 수 , 커플 쌍의 수 가 주어질 때, 조건을 모두 만족시키면서 솔로와 커플을 앉힐 수 있는지 판단해야 한다.
입력
첫째 줄에 테스트 케이스의 수 ()가 주어진다.
각 테스트 케이스의 첫째 줄에 세 정수 , , (, , )가 주어진다. 이어지는 개의 줄은 영화관 맨 앞 좌석줄부터 맨 뒤 좌석줄까지 차례로 대응한다. 각 줄은 길이가 8인 이진 문자열이고, 0은 예약되지 않은 좌석, 1은 예약된 좌석을 뜻한다.
출력
각 테스트 케이스마다 조건을 모두 만족시키며 앉힐 수 있으면 YES를, 그렇지 않으면 NO를 한 줄에 출력한다.