随笔分类 - 动态规划
摘要:【题目链接】:http://hihocoder.com/problemset/problem/1044【题意】 【题解】 设f[i][j]表示; 前i-1个位置已经决策完; 然后i-m+1..i这一段选择的状态是j的最多清扫垃圾数目; 【Number Of WA】 0 【完整...
阅读全文
摘要:【题目链接】:http://hihocoder.com/problemset/problem/1475【题意】 _using namespace std;#define lson l,m,rt= b;i--)#define mp make_pair#define pb push_...
阅读全文
摘要:【题目链接】:http://hihocoder.com/problemset/problem/1516【题意】 【题解】 状态压缩DP+bfs 这个过河问题能用bfs来搞.涨知识了; 首先; 16个人 容易想到用0..216−1来表示3处地方的状态; 即这一边的岸,船上,以及对岸;...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/793/problem/D【题意】 给你n个点, 这n个点 从左到右1..n依序排; 然后给你m条有向边; 然后让你从中选出k个点. 这k个点形成的一条路径; 且在路径中,一个被访问过的点不会经过两次或以上;...
阅读全文
摘要:【题目链接】:http://hihocoder.com/problemset/problem/1486【题意】 【题解】 设f[i][j]表示前i个物品,每种属性的状态奇偶状态为j的最大价值; 这里用j的二进制对应每种属性的状态; 为1表示那种属性的物品个数...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/797/E【题意】 给你一个n个元素的数组; 每个元素都在1..n之间; 然后给你q个询问; 每个询问由p和k构成; 会对p进行 p=p+a[p]+k操作若干次; 你要输出p第一次大于n...
阅读全文
摘要:【题目链接】:https://acm.zzuli.edu.cn/zzuliacm/problem.php?id=2134【题意】 【题解】 设f[i]表示数字i分解为二进制数的方案数; 则 如果i为偶数->则i的最后一位是0 f[i]=f[i/2]+f[i/2-1] ->考虑在最后...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/510/problem/D【题意】 你可以买n种卡片; 每种卡片的花费对应c[i]; 当你拥有了第i种卡片之后; 你可以在任意位置x跳到x-l[i]或x+r[i]; 问你至少要花费多少钱买卡片,使得你能够跳跃...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/757/D【题意】 给你一个01串; 让你分割这个01串; 要求2切..n+1切; 对于每一种切法 所切成的各个部分的二进制,转成十进制之后;假设里面最大的数为m; 问1..m这些数字都...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/760/problem/D【题意】 去旅行,有3种类型的乘车票; 第一种:只能旅行一次20元 第二种:按时间计算,90分钟内能无限量旅行,50元 第三种:按时间计算,1440分钟内能无限量旅行,120元 每次...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/514/E【题意】 无限节点的树; 每个节点都有n个儿子节点; 且每个节点与其第i个节点的距离都是ai; 问你与根节点的距离不超过x的节点个数; 【题解】 考虑一个非常不靠谱的DP方程...
阅读全文
摘要:【题目链接】:http://hihocoder.com/contest/hiho145/problem/1【题意】 【题解】 设f[i][j]表示做对i道题,做错j道题能够到达的最好状态是什么; 这里的状态不是单单是指到了第几关; 因为可能同样到达了第4关,但是你前面的到达第4关的...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/768/problem/D【题意】 你有一个水晶; 它每天都会产生一个球??(球有k种) 然后每种球产生的可能性是相同的->1/k 然后给你q个询问; 每个询问pi; 问你最少需要多少天; 每种球至少有一个的...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/777/E【题意】 让你摆汉诺塔片; 要求在上面的片的外圈大于在下面的片的内圈,且小于下面的片的外圈; 给你n个片; 每个片有属性->外圈半径,内圈半径,高度; 然后让你选择其中的一些片...
阅读全文
摘要:【链接】h在这里写链接【题意】 k是最高级别的分数,最高界别的分数最多只能有x个。 1= 0; i--)//枚举x节点它的重要节点个数 { //这里的i必须是逆序的,这样才可保证f[x][i-j]访问到的是x这个节点前面 //的儿...
阅读全文
摘要:【链接】h在这里写链接【题意】给你n个数字;让你在其中找出三个数字i,j,k(i#define LL long longusing namespace std;const int N = 1e5;int n;LL pre[N+10],after[N+10];//前缀最大,后缀最大LL a[N+10]...
阅读全文
摘要:【链接】h在这里写链接【题意】在这里写题意【题解】 dp[i][0] 第i个位置,bob没有决策权 dp[i][1] 第i个位置,bob有决策权 dp[n][0] = 0; dp[n][1] = a[n]; for (int i = n-1;i >= 1;i--){ ...
阅读全文
摘要:【链接】h在这里写链接【题意】让你在n个点组成的集合里面选取不为空的集合s.使得这里面的点没有出现某个点a和b,ax>=bx且ay>=by;问你s的个数。【题解】我们把这些点按照(x,y)升序排(x优先,y次之).然后按顺序处理这些点。会发现.我们在处理(x,y)点的时候.只有它的左上方那些点是可以...
阅读全文
摘要:【链接】h在这里写链接【题意】有n个人,它们都要在某一时刻开始,全都到达0位置,然后维持最少k个时间单位,然后再全都回到原来的位置;第i个人初始的位置是i.且一共有m班航班.每一班航班,要么是从0出来的,要么是进入0的,且航班起飞的时间为di,出发地为fi,目的地为ti,花费为ci;(航班当天到);...
阅读全文
摘要:【链接】链接【题意】n个人从左到右站在一条直线上。每个人都有一个能力值g[i],然后每个人可以将相邻的一个人打败。然后它的能力值能够增加相应的能力值(就是打败了的那个人的能力值).A能够打败B的条件是g[A]+D>=g[B].n-1次后,只会剩下一个人了。问你最后的那一个人可能是谁。输出所有可能的人...
阅读全文

浙公网安备 33010602011771号