#15990
#15990
質問する
に答える
T=int(input())
limit=100000
division=1000000009
dp=[[0] *4 for _ in range(limit+1)]
ans=[]
dp[1]=[0,1,0,0]
dp[2]=[0,0,1,0]
dp[3]=[0,1,1,1]
for i in range(4,limit+1):
dp[i][1]=(dp[i-1][2]+dp[i-1][3])%division
dp[i][2]=(dp[i-2][1]+dp[i-2][3])%division
dp[i][3]=(dp[i-3][1]+dp[i-3][2])%division
for i in range(T):
N=int(input())
ans.append(sum(dp[N])%division)
for x in ans:
print(x)
1、2、3列をそれぞれ1、2、3加算の値と呼び、i行1列に対してi-1行2列と3列を加算する.2、3列目も同様に適用されます.Reference
この問題について(#15990), 我々は、より多くの情報をここで見つけました https://velog.io/@cherriverhee/1149-fycsaq9eテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol