만드는 중입니다

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

숫자

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

요약
양의 정수 N개의 합과 이웃한 두 수의 곱이 주어질 때, 조건을 만족하는 정수들을 구하거나 없으면 NE를 출력하는 문제입니다.
난이도

보통10점 중 6점

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

문제

Vytautas는 오래전부터 영국에 살고 있으며 여가 시간에 수학 퍼즐을 푼다. 어느 날 친구가 그에게 다음 문제를 냈다. 양의 정수가 10개 있다. 이 수들의 합과, 첫 번째와 두 번째 수의 곱, 두 번째와 세 번째 수의 곱, ..., 아홉 번째와 열 번째 수의 곱이 주어진다. 이 수들을 구하라. Vytautas는 종이에 풀어서 반 시간 만에 해결했다.

다음 날 친구는 같은 문제를 수 100개로 냈다. 그제야 Vytautas는 NN개의 수에 대해 이 문제를 푸는 프로그램을 짜는 편이 더 간단하다는 것을 깨달았다.

NN, 모든 수의 합, 그리고 첫 번째와 두 번째, 두 번째와 세 번째, ..., (N−1)(N-1)번째와 NN번째 수의 곱이 주어진다. 그런 수가 존재하면 그 수들 자체를 구하라.

입력

첫 줄에 NN이 주어진다. 둘째 줄에는 모든 수의 합이 주어진다. 셋째 줄에는 첫 번째와 두 번째 수의 곱, 넷째 줄에는 두 번째와 세 번째 수의 곱이 주어지며, 같은 방식으로 N+1N+1번째 줄에는 (N−1)(N-1)번째와 NN번째 수의 곱이 주어진다.

출력

그런 수가 존재하면 첫 줄에 TAIP를 출력한다. 둘째 줄에 첫 번째 수, 셋째 줄에 두 번째 수를 출력하고, 이런 식으로 마지막 줄에 NN번째 수를 출력한다. 정답이 여러 개이면 그중 아무거나 출력한다.

주어진 데이터를 만족하는 수가 없으면 한 줄에 NE를 출력한다.

제한

모든 테스트에서 2≤N≤200002 \le N \le 20000이다. 문제에 주어진 합과 곱은 10910^9을 넘지 않는 양의 정수이다.

예제3

  1. 예제 1

    입력
    2
    5
    6
    
    예상 출력
    TAIP
    2
    3
    
  2. 예제 2

    입력
    4
    26
    23
    23
    1
    
    예상 출력
    TAIP
    1
    23
    1
    1
    
  3. 예제 3

    입력
    4
    5
    1
    1
    1
    
    예상 출력
    NE