摘要: 链接 分析:dp[i][j]表示前i个数能够组成j的对数,可得dp[i][j]=dp[i-1][j]+dp[i-1][j-i],所以最后dp[n][sum/2]既是所求 1 /* 2 PROB:subset 3 ID:wanghan 4 LANG:C++ 5 */ 6 #include "iostr 阅读全文
posted @ 2017-07-17 19:23 wolf940509 阅读(136) 评论(0) 推荐(0)
摘要: 链接 分析:先打表需要用到的罗马数字,然后暴力转换,最后统计一下即可 1 /* 2 PROB:preface 3 ID:wanghan 4 LANG:C++ 5 */ 6 #include "iostream" 7 #include "cstdio" 8 #include "cstring" 9 # 阅读全文
posted @ 2017-07-17 13:25 wolf940509 阅读(144) 评论(0) 推荐(0)
摘要: 石子合并 链接 分析:dp[i][j]表示从i顺时针数j个位置的最大值,规划方向是顺推,初始时dp[i][i]=0。显然,我们需要求出合并个数为2,3,,,,n的情况,对于dp[i][j]我们假设最后一次合并位置为k,dp[i][j]=dp[i][k]+dp[k+1][j]+sum[i,j],因为s 阅读全文
posted @ 2017-07-17 01:46 wolf940509 阅读(205) 评论(0) 推荐(0)