2026-01-28 19:56:10 +09:00

26 lines
587 B
Python

MOD = 1000000007
def multiply_matrix(a, b) :
result = [[0,0],[0,0]]
for i in range(2) :
for j in range(2) :
temp = 0
for k in range(2) :
temp += a[i][k]*b[k][j]
result[i][j] = temp%MOD
return result
def power_matrix(adj, N) :
if N == 1 :
return adj
half = power_matrix(adj, N//2)
if N%2 == 0 :
return multiply_matrix(half, half)
else :
return multiply_matrix(multiply_matrix(half, half), adj)
print(power_matrix([[1,1], [1,0]], int(input()))[1][0]%MOD)