만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

산책하는 Boy

면접 대비

시간 제한2초메모리 제한1024 MB

요약
메시지가 보内낸 시각들이 주어질 때 메시지가 없는 구간에 120분짜리 산책을 두 번 이상 겹치지 않게 넣을 수 있는지 판단합니다.
난이도

쉬움10점 중 3점

유형
그리디, 구현
정답자
아직 제출이 없습니다

문제

SWERC 심사위원 중 한 명은 Boy라는 이름의 개를 키운다. Boy는 훌륭한 경쟁 프로그래머일 뿐만 아니라 신선한 공기를 좋아해서, 하루에 최소 두 번은 산책시키고 싶어 한다. Boy를 산책시키려면 120120분이 연속으로 필요하다. 두 산책은 겹칠 수 없지만, 앞 산책이 끝나자마자 다음 산책을 시작할 수 있다. ACCEPTED를 받기 전과 후의 Boy. 오늘 심사위원은 SWERC Discord 서버에 메시지를 nn개 보냈다. ii번째 메시지는 자정으로부터 aia_i분 후에 보냈다. 심사위원은 Boy를 산책시키는 동안에는 메시지를 보내지 않지만, 산책 직전이나 직후에는 메시지를 보낼 수 있다. 오늘 심사위원이 Boy를 적어도 두 번 산책시켰을 가능성이 있는가? 하루는 1440분이다. 산책은 분 ss (s≥0s \ge 0)에 시작해서 분 ee (e≤1440e \le 1440) 직전에 끝나면 오늘 일어난 것으로 본다. 이때 e−s=120e - s = 120이어야 하고, 모든 i=1,2,…,ni = 1, 2, \dots, n에 대해 ai≤sa_i \le s 또는 ai≥ea_i \ge e여야 한다.

입력

첫 줄에 테스트 케이스의 개수 tt (1≤t≤1001 \le t \le 100)가 주어진다. 이어서 tt개의 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 줄에는 심사위원이 보낸 메시지의 개수 nn (1≤n≤1001 \le n \le 100)이 주어진다. 둘째 줄에는 nn개의 정수 a1,a2,…,ana_1, a_2, \dots, a_n (0≤a1<a2<⋯<an<14400 \le a_1 < a_2 < \cdots < a_n < 1440)이 주어진다. 이는 메시지를 보낸 시각으로, 자정으로부터 경과한 분 단위이다.

출력

각 테스트 케이스마다 Boy를 적어도 두 번 산책시켰을 가능성이 있으면 YES, 없으면 NO를 한 줄에 출력한다.

힌트

첫 번째 테스트 케이스에서 심사위원은 0을 제외한 100의 배수 시각마다 메시지를 보냈다. Boy를 한 번도 산책시킬 수 없었다. 두 번째 테스트 케이스는 시각이 위와 같지만 500과 1000이 빠져 있다. 예를 들어 [440,560][440, 560]과 [980,1100][980, 1100] 구간에 산책시켰을 수 있다. 상황은 아래 그림에 나타냈으며, 초록색 구간이 산책이다. 세 번째 테스트 케이스는 시각이 첫 번째와 같지만 1000이 빠져 있다. Boy는 최대 한 번 산책시킬 수 있었다. 네 번째 테스트 케이스에서 Boy는 [739,859][739, 859]과 [859,979][859, 979] 구간에 산책시켰을 수 있다.

예제1

  1. 예제 1

    입력
    6
    14
    100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400
    12
    100 200 300 400 600 700 800 900 1100 1200 1300 1400
    13
    100 200 300 400 500 600 700 800 900 1100 1200 1300 1400
    13
    101 189 272 356 463 563 659 739 979 1071 1170 1274 1358
    1
    42
    5
    0 1 2 3 4
    
    예상 출력
    NO
    YES
    NO
    YES
    YES
    YES