洛谷p1464 function图解
时间: 2023-10-27 13:06:17 浏览: 156
洛谷 p1464 是一道经典的动态规划问题,也被称为函数的图解问题。这道题的题目描述如下:
给定一个整数函数 f(x),其中 x 是一个非负整数。函数满足以下性质:
- f(0) = 1
- f(x) = f(x-1) + f(x/2) + f(x/3),其中 x > 0 且 x 可以整除 2 或 3。
题目要求计算 f(x) 的值,给定的 x 是一个非负整数。
解题思路是使用动态规划来求解。我们可以定义一个数组 dp,其中 dp[i] 表示 f(i) 的值。根据题目给出的性质,可以得到递推关系式:
dp[i] = dp[i-1] + dp[i/2] + dp[i/3]
在实际求解中,我们从小到大计算 dp[i] 的值,直到计算到 dp[x] 的值为止。最终得到的 dp[x] 即为所求函数值。
以下是对于 x = 10 的计算过程示例:
- 初始化 dp 数组:dp = 1。
- 计算 dp:dp = dp + dp + dp = 1 + 1 + 1 = 3。
- 计算 dp:dp = dp + dp + dp[0] = 3 + 3 + 1 = 7。
- 计算 dp:dp = dp + dp + dp[1] = 7 + 3 + 3 = 13。
- 计算 dp:dp = dp + dp + dp[1] = 13 + 7 + 3 = 23。
- 计算 dp:dp = dp + dp + dp[1] = 23 + 7 + 3 = 33。
- 计算 dp:dp = dp + dp + dp = 33 + 13 + 7 = 53。
- 计算 dp:dp = dp + dp + dp = 53 + 13 + 7 = 73。
- 计算 dp:dp = dp + dp + dp = 73 + 23 + 13 = 109。
- 计算 dp:dp = dp + dp + dp = 109 + 23 + 13 = 145。
- 计算 dp[10]:dp[10] = dp + dp + dp = 145 + 33 + 23 = 201。
所以,f(10) 的值为 201。
这就是洛谷 p1464 function图解的解题思路和计算过程。希望能对你有所帮助!
相关推荐











