結果
| 問題 | 
                            No.2156 ぞい文字列
                             | 
                    
| コンテスト | |
| ユーザー | 
                             hibit_at
                         | 
                    
| 提出日時 | 2022-11-13 16:25:31 | 
| 言語 | Python3  (3.13.1 + numpy 2.2.1 + scipy 1.14.1)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 34 ms / 2,000 ms | 
| コード長 | 537 bytes | 
| コンパイル時間 | 93 ms | 
| コンパイル使用メモリ | 12,544 KB | 
| 実行使用メモリ | 10,752 KB | 
| 最終ジャッジ日時 | 2024-09-14 22:46:26 | 
| 合計ジャッジ時間 | 1,473 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge1 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 4 | 
| other | AC * 16 | 
ソースコード
n=2
P=998244353
def product(a,b):
    c=[[0 for i in range(n)] for i in range(n)]
    for i in range(n):
        for j in range(n):
            for k in range(n):
                c[i][j]=(c[i][j]+a[i][k]*b[k][j])%P
    return c
def fibonacci(N):
    S=str(bin(N))[2:][::-1]
    M=len(S)
    L=[[[1,1],[1,0]]]
    for i in range(M-1):
        L.append(product(L[i],L[i]))
    R=[[1,0],[0,1]]
    for i in range(M):
        if S[i]=="1":
            R=product(R,L[i])
    return (R[0][1])
x=int(input())
print((fibonacci(x+1)-1)%998244353)
            
            
            
        
            
hibit_at