动态规划
文章平均质量分 64
ngncmh
这个作者很懒,什么都没留下…
展开
-
ZOJ Problem Set - 3662 Math Magic
The 2012 ACM-ICPC Asia Changchun Regional Contest-H题目大意就是给出n,m,k求有多少种方案k个数的和为n,lcm为m。数据范围DP勉强能接受f[k][i][j]表示已经找出k个数,和为i,lcm为j的方案数。用滚动数组优化内存。然后因为多组数据还需优化一下,要最后lcm是m,则j一定是m的约束,所以枚举j时枚举原创 2012-10-18 23:23:28 · 660 阅读 · 0 评论 -
hdu4433 locker
2012 Asia Tianjin Regional Contest -C题目大意 给出两个串s和t,给出一套转换方法,使s经过最少的步骤变为t。转换方法是 each digit can be rotated to 0-9 circularly.You can rotate 1-3 consecutive digits up or down in one stepf[i][j]原创 2012-10-27 14:17:00 · 1135 阅读 · 0 评论 -
hdu 4455 substring
题目大意就是 给出长度为n个字符串,然后Q个询问,问长度为k的所有子串中每个子串还有不同的数字的和是多少。 递推#include #include #include #include #include using namespace std;const int MAXN = 1000000+10;int c[MAXN],a[MAXN],d[MAXN],原创 2012-11-13 23:06:18 · 818 阅读 · 0 评论 -
codeforces 142 Tower
题目大意 给出n个数,可以合并相邻两个代价为1,求最小代价使得数列单调递增 DP#include #include #include #include #include using namespace std;const int maxn = 5000+10;int f[maxn],g[maxn],sum[maxn];int i,j,h,n;原创 2012-11-16 19:51:58 · 836 阅读 · 0 评论 -
hdu 4472 count
给出n个节点,满足同层节点的子节点个数相同的树有都少种不同的形态。nF[i]表示 有i个节点的满足要求的方案数,显然F[i]= sum{F[j] | (i-1)%j==0} 表示选出若干棵节点为j的树,给他们找一个公共的根,就是节点个数为i#include #include #include #include #include using namespac原创 2012-12-03 20:00:48 · 885 阅读 · 0 评论 -
SRM 308 Wardrobe
题目大意 给出螺丝钉和匹配的螺丝帽每个大小为pi实际中螺丝钉可以与正负1的螺丝帽匹配。每次取出一个螺丝钉找一个匹配的螺丝帽匹配,问最后最多能剩下多少个不匹配的螺丝钉。首先排序,然后DP,f[i]=max(f[j], calc(j+1,i))calc(j+1,i)表示这段直接匹配最多多少个剩余,贪心。枚举扔掉最小的k个螺丝钉和k个最大的螺丝帽看是否情况成立。两端相邻原创 2013-02-09 23:30:17 · 1346 阅读 · 0 评论 -
[Violet 2]After 17 题解
题目大意为给出n个矩形,求出一个向量,每个向量都不超越各自的矩形。求最小化sigma(xi * xj+yi*yj) ix和y坐标可以分开来考虑首先sigma(xi* xj) (i目前就是最小化 x1+....+xn的绝对值,经典的背包问题。#include #include #include #include #include using原创 2013-02-14 23:51:15 · 1245 阅读 · 0 评论 -
关于动态规划的单调队列优化
POJ2373:Dividing the Path描述Farmer John's cows have discovered that the clover growing along the ridge of the hill in his field is particularly good. To keep the clover watered, Farmer John is inst原创 2013-05-25 00:07:44 · 2217 阅读 · 0 评论