4.1. Fibonacci dengan DP
Hitung nilai Fibonacci ke-n menggunakan dynamic programming untuk menghindari perhitungan berulang.
def fibonacci(n):
dp = [0] * (n+1)
dp[0] = 0
dp[1] = 1
for i in range(2, n+1):
dp[i] = dp[i-1] + dp[i-2]
return dp[n]