아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

IQ 테스트

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

요약
정수 계수를 갖는 3차 이하 점화식을 만족하는 8개에서 12개의 정수 수열이 주어질 때 가장 작은 차수로 다음 항을 구합니다.
난이도

보통10점 중 5점

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

문제

IQ 테스트에는 이런 유형이 자주 나온다.

정수 수열의 앞부분 몇 개가 주어졌을 때, 그다음 수는 무엇인가?

예를 들어 (1, 2, 3, 5, 8, 13, 21)이 주어지면 피보나치 수열이므로 다음 수가 34라는 것을 금방 알 수 있다.

다음 수는 정수지만 주어진 앞부분을 그대로 지나는 다항식이 아주 많고, 그래서 답 후보도 아주 많다. 이 문제에서는 아래 형태의 점화식을 만족하는 수열만 올바르다고 본다.

f(n)=a1f(n−1)+a2f(n−2)+⋯+adf(n−d)f(n) = a_1 f(n-1) + a_2 f(n-2) + \cdots + a_d f(n-d)

여기서 1≤d≤31 \le d \le 3이고 a1,…,ada_1, \dots, a_d는 정수다. 수열을 만족하는 식이 여러 개면 dd가 가장 작은 식이 답이다.

입력

입력은 여러 테스트 케이스로 이루어진다. 첫째 줄에 테스트 케이스의 수가 주어지며, 500을 넘지 않는다.

각 테스트 케이스는 한 줄이다. 줄의 첫 번째 수는 수열의 길이 nn (8≤n≤128 \le n \le 12)이고, 이어서 수열을 이루는 정수 nn개가 공백으로 구분되어 주어진다. 각 정수의 절댓값은 1000을 넘지 않는다. 위 형태의 식을 적어도 하나 만족하는 수열만 주어지며, 답이 되는 식의 dd에 대해 처음 dd개 수는 0이 아니다.

출력

각 테스트 케이스마다 다음 수를 한 줄에 하나씩 출력한다. 다음 수의 절댓값은 100,000을 넘지 않는다.

예제2

  1. 예제 1

    입력
    3
    8 1 1 2 3 5 8 13 21
    8 1 1 1 1 1 1 1 1
    8 1 -2 4 -8 16 -32 64 -128
    
    예상 출력
    34
    1
    256
    
  2. 예제 2

    입력
    1
    8 1 1 1 3 5 9 17 31
    
    예상 출력
    57