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

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

배열 챌린지

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

요약
선형 점화식 h와 닫힌 형태의 배열 b, a가 주어질 때 n이 10^15까지 커질 수 있는 floor(sqrt(a_n))을 10^9+7로 나눈 나머지를 구한다.
난이도

어려움10점 중 9점

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

문제

다음과 같이 정의되는 배열 hh를 생각하자.

h_0 & = & 2 \text{,} \\ h_1 & = & 3 \text{,} \\ h_2 & = & 6 \text{,} \\ h_n & = & 4 h_{n - 1} + 17 h_{n - 2} - 12 h_{n - 3} - 16 \text{ for $n \ge 3$.} \\ \end{eqnarray*}$$ 또한 두 배열 $b$와 $a$를 아래와 같이 정의한다. $$\begin{eqnarray*} b_n & = & 3 h_{n + 1} h_n + 9 h_{n + 1} h_{n - 1} + 9 h_n^2 + 27 h_n h_{n - 1} - 18 h_{n + 1} - 126 h_n - 81 h_{n - 1} + 192 \text{ for $n > 0$, and} \\ a_n & = & b_n + 4^n \text{ for $n > 0$.} \\ \end{eqnarray*}$$ 주어진 정수 $n$에 대해 $\left\lfloor \sqrt{a_n} \right\rfloor$의 값을 구하라. 답이 매우 클 수 있으므로 $10^9 + 7$로 나눈 나머지를 출력한다.

입력

첫째 줄에 테스트 케이스의 수 TT가 주어진다 (1≤T≤10001 \le T \le 1000).

각 테스트 케이스는 정수 nn을 포함하는 한 줄로 이루어진다 (2≤n≤10152 \le n \le 10^{15}).

출력

각 테스트 케이스마다 문제의 답을 나타내는 정수 하나를 한 줄에 출력한다.

예제1

  1. 예제 1

    입력
    3
    4
    7
    9
    
    예상 출력
    1255
    324725
    13185773