dp
文章平均质量分 66
zsmj_sy
QQ 2439380624
展开
-
LeetCode2020春季编程赛团队赛 题解(暂完成ABCD题)
D题 切割数组题目链接 : https://leetcode-cn.com/problems/qie-fen-shu-zu/题目大意:拆分原来的一个数组,拆分后的每个数组满足最左和最优元素gcd>1gcd>1gcd>1 求最小拆分次数。题解思路:先手写了几个数据,否决了贪心的做法,强行把每个数组扩成最大 这样的做法不是最优的。考虑dp的思路,大概的复杂度是O(nm)O...原创 2020-04-28 01:10:00 · 311 阅读 · 0 评论 -
CodeForces 1139D Steps to One(概率dp 容斥/莫比乌斯反演)
题目链接https://codeforces.com/contest/1139/problem/D题意:给定一个m,每次在1-m中随机取一个数放到容器中,当容器的gcd为1时停止,求期望步数,用分数形式的逆元输出题解思路:表示只会容斥的思路啊,反演的题解那步概率的转移没看懂= =(p/(1-p))哪个不知道怎么来的下面主要提一下容斥,以后有能力了补莫比乌斯反演的方法。...原创 2019-03-26 22:15:53 · 1002 阅读 · 0 评论 -
Educational Codeforces Round 62 (Rated for Div. 2) E. Palindrome-less Arrays dp 计数 组合数学
题目链接:https://codeforces.com/contest/1140/problem/E题目大意给定一个串,不能出现长度为奇数(len≥3)(len\geq3)(len≥3)的回文串,−1-1−1的位置可以填1−k1-k1−k的所有数,问有多少种合法的方案,输出方案数。题解思路思路来源于官方题解,看完就是恍然大悟的感觉。不能出现长度为奇数(len≥3)(len\geq3)(l...原创 2019-04-10 21:16:19 · 182 阅读 · 0 评论 -
Codeforces Round #553 (Div. 2) F. Sonya and Informatics (dp 矩阵快速幂)
题目大意:给定一个数组包含010101两种字符,每次操作可以选其中两个调换位置,问经过kkk次操作之后变为00000011111这样非严格升序的概率,用逆元的形式输出。题解思路分别记000的数量为zerozerozero,111的数量为oneoneone在[1−zero][1-zero][1−zero]中的000的数量为nownownow先不考虑时空复杂度的问题:设dp[i][j]dp[...原创 2019-04-25 19:00:47 · 169 阅读 · 0 评论 -
Codeforces Round #553 (Div. 2) E. Number of Components (计数)
题目链接:https://codeforces.com/contest/1151/problem题目大意:a[i]a_[i]a[i]表示iii号节点的权值,iii号节点和i−1i-1i−1号,i+1i+1i+1号节点相邻f(l,r)f(l,r)f(l,r)表示只留下权值在[l,r][l,r][l,r]范围内的节点后,连通块的个数求∑l=1n∑r=inf(l,r)\sum_{l=1}^{...原创 2019-04-25 19:41:40 · 133 阅读 · 0 评论 -
Codeforces Round #552 (Div. 3) E stl模拟 F dp G gcd
contest链接https://codeforces.com/contest/1154E题解思路直接哈希模拟删除T了,可以用setsetset和lowerlowerlower_boundboundbound函数减少寻找下一个没有删除元素的复杂度#include <bits/stdc++.h>using namespace std;#define IOS ios::syn...原创 2019-04-25 20:10:36 · 139 阅读 · 0 评论 -
ecnu个人赛 B Black Peter dp
题目链接https://codeforces.com/gym/102190题解思路设dp[i][0]dp[i][0]dp[i][0]表示乌龟在对面,两边各有一张的牌共iii个先手赢的概率设dp[i][1]dp[i][1]dp[i][1]表示乌龟在自己,两边各有一张的牌共iii个先手赢的概率乌龟在对面有两种转移方式,分别是抽对面乌龟和抽对面正常牌乌龟在自己有一种转移方式,抽对面正常牌我...原创 2019-05-07 00:18:58 · 372 阅读 · 3 评论 -
两道图上概率dp
1.2019icpc南京网络赛D Robot题目链接:https://nanti.jisuanke.com/t/41301题目大意:有一个nnn个点mmm条边的DAGDAGDAG, 第iii步的花费是iii, 问DAGDAGDAG上从1th1_{th}1th节点到nthn_{th}nth节点的期望花费。题解思路:概率dp的题目一般都是用dp[1]dp[1]dp[1]表示答案,这题同样...原创 2019-09-05 23:01:15 · 242 阅读 · 0 评论 -
The Preliminary Contest for ICPC Asia Xuzhou 2019 J Random Access Iterator(树型dp)
题目链接: https://nanti.jisuanke.com/t/41392题目大意:以111号节点作为根节点,假如当前节点有mmm个子节点,就进行mmm次等概率的选择下一个节点,直到叶子节点为止,问最后走到最深的叶子节点的概率。解题思路:树上的一个dpdpdp转移,直接考虑转移到合法的情况比较复杂,每次转移我们考虑转移不到合法节点的情况。设dp[i]dp[i]dp[i]表示iii号...原创 2019-09-10 16:49:11 · 187 阅读 · 0 评论 -
2018 ccpc秦皇岛 Riddle 状压dp
拖了一年了才补。。。去年现场赛3个小时没做出来,今年看了半个小时就有思路了= =题目大意有数组an{a_n}an其中ai{a_i}ai可以作为物品,也可以作为袋子如果作为物品,ai{a_i}ai作为物品的重量,不一定要装在袋子里如果作为袋子,ai{a_i}ai作为袋子的容量,必须要装满物品。对每一组输入,输出总的方案数n<15,ai<2000n<15,{a_i...原创 2019-09-20 11:43:19 · 233 阅读 · 0 评论 -
hdu 6006 Engineer Assignment 2016 ccpc final (状压dp)
题目链接https://vjudge.net/problem/HDU-6006题目大意有nnn个工程和mmm个人,每个工程需要几个方面的人才,一个人在某几个方面精通,问同时最多可以进行多少个工程 (一个人只能参与一个工程)题解思路这道题的数据范围很小,考虑状压dp用dp[i][sta]dp[i][sta]dp[i][sta]表示进行到第iii个工程,用了stastasta状态的人的最大...原创 2019-09-29 13:19:42 · 143 阅读 · 0 评论 -
HDU - 4784 Dinner Coming Soon (dp)
题目链接https://vjudge.net/problem/HDU-4784题目大意从111号点走到nnn号点,有mmm条有向路径,每条路径需要花费时间和路费,初始有r元,在每个点可以选择买入 ororor 卖出 商品 ororor不做 商品最多携带bbb个, 共有[0,k−1][0,k-1][0,k−1]个空间,可以花费111的时间穿越到(i+1)(i+1)%k(i+1)号空间,不同空间...原创 2019-09-29 14:05:51 · 142 阅读 · 0 评论 -
2018-2019 ACM-ICPC, Asia East Continent Finals I Misunderstood … Missing(dp)
题目链接:https://codeforces.com/gym/102056/problem/I题目大意:打怪,人一开始有的初始攻击力,的攻击力增量(每回合增加D的攻击力 ()),问对怪造成的最大伤害是多少每回合可以选择以下操作的一种1. 打怪,造成点伤害2. 增加增量3. 直接增加攻击力给出总的回合数,和每回合对应的题解思路:这道题的关键在于如何用d...原创 2019-04-04 15:16:12 · 330 阅读 · 0 评论 -
codeforces#550 div3 G. Two Merged Sequences (贪心 / dp)
题意:从一个数组中提取出一个严格升序和一个严格降序的序列,可行输出方案题解思路:维护一个升序序列,一个降序序列,如果只满足其中一个,就插入,如果都不满足就输出no如果两个都满足,需要比较和下一个的大小关系:贪心思路就是尽量保持降序的最小值最大,保持升序的最大值最小很巧妙的贪心思路#include<bits/stdc++.h>using nam...原创 2019-04-03 21:28:56 · 124 阅读 · 0 评论 -
数论学习之错排公式
设D(n)表示n个数错排的方法数1.dp推导假设第i个和第j个元素,将第i个元素放在了第j个元素的位置上此时第j个元素的放置有两种方法 1.放在i的位置上 这时其余(n-1)个元素错排列,即D(n-1)2.不放在i的位置上,这时其余(n-2)个元素错排列即D(n-2)而且j有(n-1)种取法,得到D(n)的递推式 :D(n)=(n-1)(D(n-1)+D(n-2))2.容斥原理推导首先,n个数全排...原创 2018-05-16 21:19:58 · 720 阅读 · 0 评论 -
hdu 5985 期望 概率dp
题目链接:https://vjudge.net/problem/HDU-5985题目大意:有n种硬币,每种硬币在一次抛掷之后正面朝上的概率为p[i],每次都将所有硬币都抛掷一次,反面的硬币出局,直至最后只剩一种硬币存活或者没有硬币存活,存活下来的硬币为lucky coin 问每种硬币成为lucky coin的概率。, 一眼概率dp。。解题思路:第i种硬币在第j轮成为lucky co...原创 2018-10-23 01:21:06 · 257 阅读 · 0 评论 -
hdu 5119 (基础dp)
题意:给定n个数,有多少种方案使从中取k个数(0<=k<=n)的异或和结果大于等于m因为可以从前i个数的状态推出前i+1个数的状态,故考虑dp,而dp数组记录的应该为对应的方案数。用dp[i][j]表示前i个数xor sum为j的方案数,初始化dp[0][0]为1,最后的答案就是dp[i-1][j]分两个转移方向:1. 取第i个数:dp[i+1][j^a[i]]2...原创 2018-10-29 10:18:13 · 246 阅读 · 0 评论 -
hdu 5115 思维 dp
题意:你要杀死n只狼,对于每个狼有对应的a[i]表示其本身的战斗力,b[i]表示他可以给左右(如果有的话)的两匹狼提供b[i]的战斗力提升buff,问杀掉所有狼的最小费用。无论杀的方法,最后肯定要花费,所以只对b进行考虑,最后加上a的和。 由矩阵链乘引起的思路:用dp[i][j]表示杀光从i到j所有狼的费用。从i到j枚举k,k表示最后一只杀死的狼,这样就把i-j分为了三个部分:[i...原创 2018-10-29 10:42:38 · 172 阅读 · 0 评论 -
wannafly day4 G 置置置换
题目链接:https://www.zhixincode.com/contest/17/problem/G?problem_id=254题目大意:求合法的1-n的排列数满足奇数为峰,偶数为谷(n>=2) 法1 DP状态表示有点不太好理解,解法参考https://blog.csdn.net/jayye1994/article/details/12361481 转自JayYe...原创 2019-02-14 16:33:56 · 146 阅读 · 0 评论 -
ccpc wannafly day1 吃豆豆
题目链接:https://www.zhixincode.com/contest/1/problem/B?problem_id=13题目大意:二维棋盘,从初始点到结束点,并且要求吃到至少C个豆豆,(i,j)在第秒会有豆豆出现,问需要花费的最少时间。 当时以为是暴搜。。 然后一听题解说dp就会了。。 思维障碍了表示第k秒在(i,j)可以吃到的最多豆豆数量 上下左右中五个方向可以转移到...原创 2019-02-10 15:35:09 · 274 阅读 · 0 评论 -
wannafly day4 K 两条路径
题目链接:https://www.zhixincode.com/contest/17/problem/K?problem_id=258题目大意:一个树上每个点有一个权值,给定一个定点,两条路径的交的全集为这个点,求这两条路径的补的权值最大值挺裸的一个树形dp,做完差不多的就开始怼欧拉回路了,没来得及看。。dp[x]表示到root(即给定的点),经过x,当前获得的最大收益,最后的ans就...原创 2019-02-17 22:08:03 · 141 阅读 · 0 评论 -
wannafly day5 Kropki
题目链接https://www.zhixincode.com/contest/21/problem/F给定一个01串,为1表示i和第i+1位 有一个数是另一个的2倍 问总的符合要求的排列的 总数量 题解思路:n很小,考虑状压dp需要记录的有:当前到第几位了,当前的数是多少,当前已经选了的集合(状压表示)成2倍关系那边比较烦,写个函数清晰很多#include <c...原创 2019-02-24 14:30:10 · 194 阅读 · 0 评论 -
CodeForce 1133E - K Balanced Teams (dp)
题目链接:https://codeforces.com/contest/1133/problem/E题目大意:有n个人每个人对应一个值ai,要求组成至少一个,至多k个队伍,且队伍内的人权值差最大不超过5,问此时在队伍中的最多队员数先对数组从小到大排个序假设表示当前将第i个人作为新的队伍的第一个人,且此时有j个非空队伍的状态对应的最大在队伍里的队员数量转移方向:1.跳过第i个,直...原创 2019-03-11 20:30:44 · 591 阅读 · 0 评论 -
CodeForce 1132F - Clear the String (区间dp)
题意:一个string,每次消可以消掉一串字母相同的子串,问删除整个串的最小删除次数很典型的区间dp,赛场没出可惜了设表示消除 [ L , R ]区间所需的最小花费转移方向:1.单独删除L 可以转移到2.循环遍历区间,设下标为i时存在 此时可以转移到注意如果边界的话,需要特判由于是区间dp,要求的是在求解时,其所有的子区间都是已知的,在循环时...原创 2019-03-11 21:56:32 · 292 阅读 · 0 评论 -
Codeforces Round #538 (Div. 2) D Flood Fill (区间dp)
题目链接:https://codeforces.com/contest/1114/problem/D题目大意:一个数组,ai表示i点的颜色,开始选一个点开始,每次可以将相同颜色的块全部变成另一种颜色,问最少花费的步数 最后要合成一个颜色相同的条。对区间 [ L , R ] 有两种转移方法:1.全部变成a[r+1]的颜色,如果当前颜色不同则需要+12.全部变成a[l-1]的颜色...原创 2019-03-12 20:41:12 · 165 阅读 · 0 评论 -
C - The Intriguing Obsession CodeForces - 869C 题解( 数学/dp )
C - The Intriguing Obsession CodeForces - 869C — This is not playing but duty as allies of justice, Nii-chan!— Not allies but justice itself, Onii-chan!With hands joined, go everywhere at a sp原创 2018-04-13 21:34:54 · 344 阅读 · 0 评论