結果

問題 No.492 IOI数列
ユーザー ntuda
提出日時 2025-08-10 13:13:42
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 42 ms / 1,000 ms
コード長 509 bytes
コンパイル時間 519 ms
コンパイル使用メモリ 81,876 KB
実行使用メモリ 54,556 KB
最終ジャッジ日時 2025-08-10 13:13:46
合計ジャッジ時間 2,137 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 19
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
MOD = 10 ** 9 + 7
N2 = N % 11
D = 2
def mt(A, B):
    C = [[0] * D for _ in range(D)]
    for i in range(D):
        for j in range(D):
            tmp = 0
            for k in range(D):
                tmp += A[i][k] * B[k][j]
                tmp %= MOD
            C[i][j] = tmp
    return C

A = [[100,1],[0,1]]
X = [[1,0],[0,1]]
while N > 0:
    if N & 1:
        X = mt(A,X)
    A = mt(A,A)
    N >>= 1


now = 0
for i in range(N2):
    now *= 100
    now += 1
print(X[0][1])
print(now)
0