Lollobrigida
시간 제한1초메모리 제한128 MB
여러 개의 블록 높이가 주어질 때, 이 블록들을 이웃한 세 블록이 단조롭지 않게, 즉 매 위치에서 오르내림이 번갈아 나타나도록 배열할 수 있는지 판정한다.
문제
호버크래프트 공장의 시험용 트랙은 높이가 저마다 다른 표준 블록들을 한 줄로 이어 붙여 만든다. 완벽하게 만들어진 트랙을 lollobrigida라고 부른다. lollobrigida에서는 높이가 같은 두 블록이 이웃하지 않고, 높이가 계속 커지기만 하거나 계속 작아지기만 하는 세 블록이 연속으로 놓이지도 않는다.
좀 더 정확히 말하면, 트랙에 놓인 블록들의 높이 수열을 이라 하자. 모든 에 대해 다음 두 조건 중 하나가 성립하면 그 트랙을 lollobrigida라고 한다.
- 이고 , 또는
- 이고 .
예를 들어 높이가 인 블록들로는 lollobrigida를 만들 수 없다. 어떻게 배열하더라도 높이 인 두 블록이 이웃하거나, 또는 처럼 단조롭게 증가하거나 감소하는 세 블록이 생기기 때문이다.
반면 다른 블록 집합으로는 lollobrigida를 만들 수 있다. 예컨대 이 그러하며, 같은 집합으로 다른 lollobrigida도 만들 수 있다.
여러 개의 블록 집합이 주어진다. 각 집합마다 그 블록들을 재배열하여 lollobrigida를 만들 수 있는지 판정하여라.
입력
첫째 줄에 데이터 집합의 개수 ()가 주어진다.
이어서 개의 집합이 차례로 주어진다. 각 집합의 첫째 줄에는 블록의 개수 ()이 주어지고, 그 다음 개의 줄에 각 블록의 높이 ()가 한 줄에 하나씩 주어진다.
출력
각 데이터 집합에 대해 한 줄씩, 정확히 개의 줄을 출력한다. 번째 줄에는 번째 집합에 대한 답을 다음과 같이 출력한다.
- 그 집합으로 lollobrigida를 만들 수 있으면
TAK(폴란드어로 '예') - 만들 수 없으면
NIE(폴란드어로 '아니오')