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

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

Квадраты Фибоначчи

면접 대비

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

요약
n이 10^18까지 주어질 때, 피보나치 수 f_0부터 f_n까지의 제곱합을 998244353으로 나눈 나머지를 구한다.
난이도

보통10점 중 6점

유형
수학, 동적 계획법, 분할 정복, 정수론
정답자
아직 제출이 없습니다

문제

Сэму приходится много времени путешествовать пешком, и чтобы немного отвлечься от однообразного занятия, он решает в уме всякие задачки. Сегодня он размышлял над последовательностью чисел Фибоначчи. Она строится по следующему правилу:

  • f_0=f_1=1f\_0 = f\_1 = 1
  • f_i=f_i−2+f_i−1f\_i = f\_{i - 2} + f\_{i - 1}, для всех i≥2i \ge 2

Он посчитал значение ∑_i=0nf_i2\sum\limits\_{i = 0}^{n} f\_i^2, и теперь просит вас сделать то же самое, чтобы сравнить ответ. Так как это число может быть большим, посчитайте его по модулю 998,244,353998\\,244\\,353.

입력

В единственной строке дано одно целое число nn (0≤n≤10180 \le n \le 10^{18}).

출력

Выведите одно целое число --- ответ на задачу.

예제3

  1. 예제 1

    입력
    0
    
    예상 출력
    1
    
  2. 예제 2

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

    입력
    4
    
    예상 출력
    40