빙고!

시간 제한1초메모리 제한128 MB

요약
공이 담긴 집합이 주어질 때 0부터 N까지의 모든 값이 집합에 속한 두 공의 차의 절댓값으로 나타나는지 판정한다.
난이도

쉬움10점 중 3점

유형
완전 탐색, 수학, 구현, 배열
정답자
아직 제출이 없습니다

문제

Albert, Charles, Mary는 고전 게임 빙고의 새로운 버전을 만들었습니다. 전통적인 빙고에서는 참가자가 아닌 진행자(caller)가 게임을 진행합니다. 게임을 시작할 때 각 참가자는 00부터 NN까지의 수를 행과 열로 배열한, 서로 겹치지 않는 조합이 적힌 카드를 한 장씩 받습니다. 진행자는 00부터 NN까지 번호가 매겨진 N+1N + 1개의 공이 든 주머니를 가지고 있습니다. 매 턴마다 진행자는 주머니에서 공을 하나 무작위로 뽑아 그 번호를 참가자들에게 알리고, 다시 뽑히지 않도록 옆에 치워 둡니다. 각 참가자는 불린 수를 카드에서 찾아 있으면 표시합니다. 미리 정해진 패턴(예: 가로 한 줄 전체)을 가장 먼저 완성한 참가자가 상을 받습니다.

Albert-Charles-Mary 버전에서는 매 턴마다 진행자가 첫 번째 공을 뽑아 번호를 확인한 뒤 주머니에 다시 넣고, 두 번째 공을 뽑아 번호를 확인한 뒤 다시 넣은 다음, 두 공 번호의 절댓값 차이를 부릅니다. 재미를 더하기 위해 게임을 시작하기 전에 일부(비어 있을 수도 있음) 공을 주머니에서 제거하되, 주머니에는 최소 두 개의 공이 남도록 합니다. 이들은 주머니에 남은 공들과 이 새로운 방식만으로 00부터 NN까지의 모든 수를 여전히 부를 수 있는지 알고 싶어 합니다.

입력

입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스는 정확히 두 줄로 주어집니다. 첫째 줄에는 두 정수 NN과 BB가 주어집니다. NN은 위에서 설명한 값이며 (1≤N≤901 \le N \le 90), BB는 주머니에 남은 공의 개수입니다 (2≤B≤N+12 \le B \le N + 1). 둘째 줄에는 주머니에 남은 공을 나타내는 서로 다른 정수 bib_i가 BB개 주어집니다 (0≤bi≤N0 \le b_i \le N).

마지막 테스트 케이스 다음에는 두 개의 00이 적힌 줄이 옵니다.

출력

각 테스트 케이스마다 한 줄을 출력합니다. 00부터 NN까지의 모든 수를 부를 수 있으면 대문자 Y를, 그렇지 않으면 대문자 N을 출력합니다.

예제1

  1. 예제 1

    입력
    6 7
    2 1 3 4 0 6 5
    5 4
    5 3 0 1
    5 3
    1 5 0
    0 0
    
    예상 출력
    Y
    Y
    N