Fushicho_XF的博客

跑在时间前面,你才有可能把握住机会~

Codeforces 919D Substring (拓扑排序-堆优化+ DP)

题目链接 题意:给出一个n和m,表示n个点m条边,再给出一个字符串s,s[i]表示第i个点的为小写字母c.         随后给出m行u,v表示单向边u->v.         求顺着任意路径走某个字母出现的次数的最大值,若存在环,则输出-1 Eg: input: ...

2018-08-21 17:06:09

阅读数:25

评论数:0

HDU - 1520 Anniversary party (树形DP)

题目链接 题目:某公司80年庆典宴会,给出一个n(n个员工),然后n行w[i],表示每个员工的受欢迎值,随后每行给出一个u,v(表示u是v的上司),直到u=v=0.要求出席员工的最大受欢迎值,且员工和其上司不能同时出现. 题解:很明显是一道树形dp,父子结点不能同时选的贪心问题,那么我们只需要...

2018-08-18 17:05:36

阅读数:26

评论数:0

ZOJ - 1074 (DP之最大子矩阵O(N^3))

题目链接 题意:给出一个N表示N阶方正,随后N行每行N列数字表示矩阵中每个格子的数值,问这个矩阵的最大子矩阵价值是多少? 题解:数据比较小,直接O(N^3)过即可. 代码如下: #include<iostream> #include&a...

2018-08-18 16:59:40

阅读数:28

评论数:0

DP之最长上升子序列模板O(nlogn) (最长上升子序列)

#define inf 0x3f3f3f3f #define ll long long const int maxn = 1e4 + 500; const int mod = 1e9 + 7; const double esp = 1e-8; const double PI = acos(-1....

2018-08-18 16:46:35

阅读数:27

评论数:0

HDU - 5115 Dire Wolf (区间DP)

题目链接 题意:有一群狼,每头狼都有他的基本伤害--你打他他会反击你a[i],还有一个额外伤害,你打他身边的狼时会受到其伤害b[i],求最小收到的伤害可以消灭这群狼。 题解:区间dp,状态转移:        dp[i][j]--表示消灭i到j头狼所受到的最小伤害(p表示是之间最后杀死的狼) ...

2018-08-18 16:41:27

阅读数:23

评论数:0

HihoCoder - 1636 Pangu and Stones (区间DP)

题目链接 题意:给你n堆石头a[n]--每堆石头的数目,每次只能合并L~R堆石头,且每次合并需要消耗sum[i,j]的时间,求合并成一堆的最小时间。 题解:很明显使用区间dp做,状态转移方程如下:       dp[i][j][k]表示从i到j有k堆的最小时间       k==1,dp[i]...

2018-08-18 16:37:11

阅读数:23

评论数:0

Gym - 100554D Domination (概率DP)

题目链接 题意:给出一个t,表示t组数据,之后每组数据一个n,m表示棋盘的行数和列数,题目背景是一个人每次会随机向棋盘上一格放一个棋子,问每行每列都最少有一个棋子的数学期望是多少? //eg:2          //       1 3    =》    3.000000000000 // ...

2018-08-18 16:31:02

阅读数:20

评论数:0

牛客网暑期ACM多校训练营(第二场) H.travel (树形DP)

题目链接 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 White Cloud has a tree with n nodes.The root is a node with nu...

2018-07-25 13:52:13

阅读数:690

评论数:0

CodeForces ABBYY Cup 3.0 - Finals C The Great Julya Calendar (DFS+DP+思维)

题目链接 题意:给出一个数n,每次操作可以减去这个数位数上的某一位,问你最小多少次操作可以将n减为0. 分析:对于C1的弱数据直接O(1)实现即可(dp预处理出所有结果),C2和C3我是直接做C3的,对于n为1e18的情况,我们预处理肯定是不可能的,当是我们打表也可以发现在递减的过程中重复数据...

2018-06-03 15:53:27

阅读数:65

评论数:0

CodeForces 449D Jzzhu and Numbers (DP+容斥)

题目链接 题意:给出一个n,随后给出n个数a[i],问你这些数的非空子集所有元素&运算后等于0的集合个数(即ai1 & ai2 & ... & aik = 0 (1 ≤ k ≤ n)),结果对1e9取...

2018-05-29 22:28:38

阅读数:57

评论数:0

CodeForces 985E Pencils and Boxes (线性DP+queue)

题目链接 题意:给你N个数,现在需要你对他进行划分集合,要求每个集合的元素个数必须大于等于K,而且要求集合中的最大值减去最小值的差值要小于等于D,问你是否存在划分方法,存在就输出YES,否知输出NO. 题解:定义dp[i]表示以i为结尾的前i个数是否都存在合法的集合.           队...

2018-05-24 21:57:18

阅读数:79

评论数:0

【牛客网】埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛 L.K序列 (背包式滚动dp+模运算)

题目链接 (背包式滚动dp+模运算) 题意:给一个数组 a,长度为 n,若某个子序列中的和为 K 的倍数,那么这个序列被称为“K 序列”。现在要你 对数组 a 求出最长的子序列的长度,满足这个序列是 K 序列。  题解:考虑到是子序列可以不连续,所以不能直接记录前缀和维护双指针做(子串做法)...

2018-05-05 18:02:47

阅读数:56

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭