x가 최대 2^48까지 커질 수 있는 최대 1000개의 질의에 대해 x번째 피보나치 수를 10^9로 나눈 나머지를 구한다.
정수 xxx를 입력받아 피보나치 수열의 xxx번째 값 f(x)f(x)f(x)를 10910^9109으로 나눈 나머지를 구한다.
피보나치 수열의 정의는 다음과 같다.
f(1)=f(2)=1f(1) = f(2) = 1f(1)=f(2)=1
f(k)=f(k−1)+f(k−2)(k>2)f(k) = f(k-1) + f(k-2) \quad (k > 2)f(k)=f(k−1)+f(k−2)(k>2)
첫 줄에 테스트 케이스의 개수 ttt가 주어진다 (1≤t≤10001 \le t \le 10001≤t≤1000).
이어지는 ttt개의 줄에는 각각 정수 xxx가 하나씩 주어진다 (1≤x≤2481 \le x \le 2^{48}1≤x≤248).
각 테스트 케이스마다 f(x)f(x)f(x)를 10910^9109으로 나눈 나머지를 한 줄에 하나씩 출력한다.