摘要:
这道题的意思是给你一串数字, 每一个数字可以通过一个公式转换成其他的数, 你可以转换一个连续区间的数, 让这一串数字的和最大。。只需要做一个小小的转换就可以转化问题为最大连续和。 具体见代码, 不过需要注意最大连续和的递推式是d[i] = max(c[i], d[i-1]+c[i])不要弄错了... 阅读全文
posted @ 2015-11-28 23:17
xing-xing
阅读(377)
评论(0)
推荐(0)
摘要:
做着道题是只推出了递推式,刚开始是1 接下来是1 1 2 =》 1 1 2 1 2 2 3我们可以推出式子d[(2^i)-1] = 2*d[2^(i-1)-1] + 2^(i-1)这个递推式, d[2^i-1]表示 数列前2^i-1项的和,求出这些以后我们可以给每一个d[2^i-1]+1就得到了... 阅读全文
posted @ 2015-11-28 23:10
xing-xing
阅读(193)
评论(0)
推荐(0)
摘要:
这个题目是求解第k小01背包, 我们只需要再多加一维表示容量为j时的价值即可。。代码里面用了归并排序的思想来求解f[j][k], 代码如下:#include #include #include using namespace std;int f[1000+10][35];int A[35],... 阅读全文
posted @ 2015-11-28 12:24
xing-xing
阅读(167)
评论(0)
推荐(0)