만드는 중입니다

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

Five Nights at Freddy's

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

요약
각 카메라 i의 연속 등장 간격이 a_i 이하가 되도록 모든 카메라를 담은 순환 순서를 구성하고, 불가능하면 NIE를 출력하는 문제입니다.
난이도

어려움10점 중 8점

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

문제

마리아는 마침내 꿈에 그리던 직업을 얻었다. 그녀는 스카이 타워의 전문 야간 경비원이 되었다. 그녀의 업무 중 하나는 건물에서 발생하는 원치 않는 활동을 보고하는 것이다. 다행히도 그녀는 아늑한 의자에서 일어나지 않고도 일을 처리할 수 있다. 그녀가 할 일은 고층 빌딩에 설치된 카메라를 계속 확인하는 것뿐이다. 그러려면 11번부터 nn번까지 번호가 붙은 nn개의 서로 다른 카메라를 다뤄야 한다. 그녀는 카메라의 정보를 처리하는 전송 사이클을 만들고자 한다. 그녀는 어떤 카메라에서 오는 전송을 11분 동안 본 뒤 사이클의 다음 카메라로 전환한다. 각 카메라는 사이클에 적어도 한 번 등장해야 한다. 추가 제약이 있다. 사이클에서 카메라 ii가 연속으로 등장하는 두 위치 사이의 간격은 aia_i를 넘을 수 없다. 마리아에게는 다행히도 1≤i<j≤n1 \le i < j \le n인 모든 i,ji, j에 대해 aia_i와 aja_j 중 적어도 하나는 다른 하나의 배수이다. 가능하다면 길이가 10610^6을 넘지 않는 그런 사이클을 만들도록 마리아를 도와라.

입력

첫째 줄에 아래 줄들에 설명된 테스트 케이스의 수 Z≤50Z \le 50이 주어진다.

각 테스트 케이스의 첫째 줄에는 스카이 타워에 있는 카메라의 수 nn이 주어진다.

다음 줄에는 카메라에 대한 설명이 주어진다. ii번째 수는 ii번째 카메라의 매개변수 aia_i를 나타낸다.

출력

각 테스트 케이스에 대해 다음과 같이 출력한다.

그런 사이클을 만들 수 없다면 출력의 첫째 줄이자 유일한 줄은 단어 NIE 하나로 이루어져야 한다.

그런 사이클을 만들 수 있다면 첫째 줄에 단어 TAK을 출력한다. 다음 줄에는 전송 사이클의 설명을 출력한다. 첫 번째 수 mm은 사이클의 길이이고, 이어지는 mm개의 수는 사이클에 나타나는 순서대로 나열한 카메라 번호이다.

가능한 답이 여러 개라면 그중 아무거나 출력한다.

제한

  • n∈[1,105]n \in [1,10^5]
  • ai∈[1,105]a_i \in [1,10^5]

예제1

  1. 예제 1

    입력
    2
    3
    2 4 8
    5
    3 3 6 6 42
    
    예상 출력
    TAK
    4 1 2 1 3
    NIE