2019年1月22日

zoj 3777 状压dp || 二分+搜索

摘要: 题意:给一个矩阵(n*n n<=14)求出选择矩阵不同行,不同列,最后加起来和大于m的选择数 状压dp做法: 由于每一行都要选择,那么认为就是从第一行开始顺序选择 。那么一个二进制数,它的1的个数就是选择了的行数,而每个位置的1代表了这一个列选择或则不选择 这样就用一个二进制数表示出来状态了。 dp 阅读全文

posted @ 2019-01-22 20:41 Helpp 阅读(119) 评论(0) 推荐(0) 编辑

hdu 4283 区间dp

摘要: 题意:开始一个序列,每个人有一个愤怒值D,如果他是第K个上场,不开心指数就为(K-1)*D。 但可以我们可以用一个小黑屋(栈)调整顺序,这样求出最后最小的愤怒值之和 思路:区间dp dp[i][j]代表从i到J的愤怒值。 由于有栈作为顺序调整,那么i 可以是第[1,j-i+1]个登场。 假设它作为第 阅读全文

posted @ 2019-01-22 20:27 Helpp 阅读(111) 评论(0) 推荐(0) 编辑

hdu 2476 区间dp

摘要: 题意:给一个串s,一个串t。将s粉刷成t ,每次可以粉刷一个区间,将一个区间的字母粉刷成一个相同,最少粉刷需要多少次。 思路:区间dp 假设我们没有串s,而 将 另一个与 t 完全不相同的串粉刷成t。 这样我们对t进行一个处理,dp[i][j]表示从i到j需要粉刷多少次。这个区间dp并不难。 由于可 阅读全文

posted @ 2019-01-22 20:18 Helpp 阅读(132) 评论(0) 推荐(0) 编辑

zoj 3469 区间dp

摘要: 题意:外卖小哥送餐,在位置s,没走一公里需要时间v,有n个地方的顾客x[i],拥有不同的愤怒值b[i] 在等到餐之前,他们的愤怒按时间增加b[i].(N<=1000),求最后最小的愤怒值之和 思路:区间dp dp[i][j]表示从i到j送餐愤怒之和。但是传统的N^3的复杂度解决不了了 但是可以发现, 阅读全文

posted @ 2019-01-22 19:40 Helpp 阅读(188) 评论(0) 推荐(0) 编辑

2019年1月21日

codeforces 1105 d 多源点bfs..

摘要: 题目:https://codeforces.com/contest/1105/problem/D 题意:给定n个点人,拥有不同数量且不同位置的点,让它们按不同的速度进行扩散..(同等时间的时候,人开始是1..n) 做法:多源点bfs..处理的时候两个vector来回倒腾..break条件要处理好。。 阅读全文

posted @ 2019-01-21 18:58 Helpp 阅读(707) 评论(0) 推荐(0) 编辑

cf 1105 e 位操作 状压dp(记忆化搜索)

摘要: 链接:https://codeforces.com/contest/1105/problem/E 题意:有m个人(<=40),申请访问主页,如果每次主页是它的名字,他会很开心。n次操作,每次当为1的时候可以设置主页。 思路:这样可以看做一个图,把每个人看做一个点,那么在每一次访问主页有冲突的,那么这 阅读全文

posted @ 2019-01-21 18:41 Helpp 阅读(306) 评论(0) 推荐(0) 编辑

2018年11月20日

cf 1076e 树上差分+树状数组+离线

摘要: http://codeforces.com/contest/1076/problem/E 参考博客:http://www.cnblogs.com/AKMer/p/9950332.html 题意: 根节点为1 树,m次操作,每次给定v,d,x,将v的儿子(包含其本身)与它距离<=d的权值加上x 问最后 阅读全文

posted @ 2018-11-20 20:50 Helpp 阅读(220) 评论(0) 推荐(0) 编辑

2018年11月19日

cf 1062d 思维 欧拉筛变形

摘要: http://codeforces.com/contest/1062/problem/D 题意:给个n ,在n之内 所有(a,b) ,如果存在唯一的x 使a*|x| == b 或者 b* |x| == a (a,b>2)那么ans + |x| 求最后结果 思路:如果a%b==0那么肯定是唯一的x了, 阅读全文

posted @ 2018-11-19 22:06 Helpp 阅读(164) 评论(0) 推荐(0) 编辑

cf 1062e 区间lca+线段树+dfs序

摘要: http://codeforces.com/contest/1062/problem/E 题意:给出一棵有根树,1为根结点,接下来q次询问,每次给出一个[l,r]区间, 现在允许删掉[l,r]区间内任何一个点,使得所有点的最近公共祖先的深度尽可能大, 问删掉的点是哪个点,深度最大是多 思路: 区间l 阅读全文

posted @ 2018-11-19 22:01 Helpp 阅读(295) 评论(0) 推荐(0) 编辑

cf 1077 区间dp 双向队列保存区间最大值

摘要: http://codeforces.com/contest/1077/problem/F2 题意:给定n,k,x; 表示长为n的序列中,每长为k的一段必须有一个数被选择 在选择x次之后,得到的最大值 思路:简单的n,k,x<=200的时候 可以nkx的dp 但是对于nkx<=4000的 这样就超市 阅读全文

posted @ 2018-11-19 21:45 Helpp 阅读(260) 评论(0) 推荐(0) 编辑

导航