bp学习笔记:
一:bp使用场合:
1、计数问题(有多少种方式走到右下角,有多少方法选出K个数使得和为SUM)
2、求最大最小值 (路径最大最小数字和),最长子序列
3、存在性问题。
二:bp组成:
1、确定状态:需要开一个数组,数组每个元素[i]或者[i][j]代表一个状态。然后确定最后一步,那么就变成了子问题。
2、转移方程: f(x) = {.......}
3、初始和边界条件:转移方程无法计算的数字。
4、计算顺序
二:bp例题:
1、coin change 面值为2、 5、 7 的银币最少组成27元
思路,假设最优解为k,最后一枚面值为ak,那么前面的就变成了27-ak
f(27) = min{f(27-2)+1,f(27-5)+1,f(27-7)+1};
递归解法:
int f(int x)
{
int
}