cf739b 前缀和好题

题目大意:给一棵树,节点u可以控制节点v的条件是 dis(u,v) pair可以用于lower_bound,如果想按只某个变量查找,make_pair的时候,对应变量的位置写为-1.并且搜索的时候只能是make_pair(ll,int)不能是(ll,ll) 代码: #include ...

2018-01-31 23:22:37

阅读数 115

评论数 0

hdu5714 排序+前缀和

首先需要知道视角就是平时理解的视角(角度),题目中说垂直河岸容易误导。然后需要注意的是看到完整的船只。思路:对于每条船,能观察到它完整的观测点区间为(y-z,x+z),把区间存储。接下来的排序比较关键:先按点的位置从小到大排,如果位置相同则前端点排前面(对于向右船只的区间,左端点为前端点;向右的区...

2018-01-30 23:30:44

阅读数 208

评论数 0

LIS&LCS 线性结构dp

LIS 最长不下降子序列。递推式:dp[i]=max(dp[j])+1;(j hdu1160 题目是说老鼠的速度与其体重成反比,所以需要你输出一堆老鼠,它们的速度递减但是体重递增。 思路:首先对速度从大到小排序,接着对排序后的数组的体重求lis,路径输出需要熟练。 #include #inc...

2018-01-30 00:33:05

阅读数 82

评论数 0

树上的dp总结

这几天做了些树状dp的题目,现在总结i一下。树的最大独立集:这类题目大概是碰到最多的。独立集是指,一个图中的子点集,集合中的点都不相邻。题目一般会描述成给你一个树状关系,然后下属和上司不能同时出现,选出最多的人参加活动。递推式:dp[root][1]=Σdp[son][0],dp[root][0]...

2018-01-30 00:12:47

阅读数 134

评论数 0

图的最大独立集poj1419

模仿树的独立集写了一波,发现路径输出有点 困难。然后就上网看了看好像都是用特别的算法做的,写码一下,以后有空回啦看这个算法。 只输出了最大独立集的个数, #include #include #include #include #include #include #include using n...

2018-01-26 18:45:34

阅读数 87

评论数 0

uva12186

这题,细思极恐,这么短的代码就实现了,参考了别人的代码写出来的,感觉比紫书上的代码好懂,看来要好好训练dfs+dp的这种解法。 #include #include #include #include #include #include #include using namespace std; ...

2018-01-26 11:24:48

阅读数 127

评论数 0

poj1661 dp+dfs好题

对于dp加dfs的题目,一直不太熟练,要训练一下才行。这题思路不难想到,关键是怎么编程实现。 思路:从每块板(把最上面的点想象成一块长度为0的板)往下掉的的最短时间,必然是左边的下降的时间和右边下降时间取最短,然后递推式简单谢啦就是dp[seg_id][0]=min(dp[seg_id+1][0...

2018-01-26 09:43:28

阅读数 98

评论数 0

dp好题 hdu1176

这道题,网上很多代码都是错的(dp[loc][time]=max(dp[loc-1][time-1],dp[loc+1][time-1],dp[loc][time])+cake[loc][time]仔细一想就会发现,如果根本没有走到那个位置,而那个位置又会有馅饼掉下来,根据这个式子是会有记录的,然...

2018-01-25 18:29:01

阅读数 106

评论数 0

数独hdu1426

思路:首先输入的时候记录每一个空缺的位置,然后dfs每个空缺的位置。注意输出格式 #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f using na...

2018-01-24 10:51:08

阅读数 129

评论数 0

poj3040 贪心好题

题目大意:农场主给一个小弟发工资,每周至少需要发c元,现在FJ有一堆硬币,这些硬币面值的最大公约数相同即它们成倍数关系。问FJ最多能给多少个星期的工资? 这道题开始两次都想错了,后来看了别人的思路,感觉和装箱问题有点类似。 1、先排除掉大于等于C的面值,这些面值可以单独发一个星期; ...

2018-01-24 00:08:44

阅读数 154

评论数 0

poj2393

题目大意:给出生产酸奶的当前星期的成本和当前星期酸奶的需求量,问如何用最少的成本满足需求量。(可以提前生产酸奶,然后把酸奶贮藏到仓库中,仓库一个星期收取费用s元),注意上面的费用都是单位酸奶的费用。 这道题贪心的策略很明显:每次找当前星期及以前生产的最低成本。 不过如果直接这样写查找的复杂度o...

2018-01-22 17:52:01

阅读数 122

评论数 0

poj1017贪心好题

题目大意是:一家工厂的产品有1*1、2*2、3*3、4*4、5*5、6*6六种尺寸,现在要对它们包装,但公司只有6*6的盒子,问最少需要多少个盒子可以把所有产品装好。 对于立体的问题思考起来难免不方便,所以我们把讨论立体的问题投影到面积上来,则问题可以变成:给出上述几种尺寸的木板,问最少需要裁剪...

2018-01-22 17:19:09

阅读数 113

评论数 0

poj3617

也是一题贪心的水题,贪心的策略很简单:每次选开头和结尾较大者放入新的字符串的末尾,不过需要注意的是,当首尾相同时需要比较前后的下一个(即左边的右边一个和右边的左边一个)的大小,下一个是较小的那个放入新的字符串,详情可以自己模拟。 这道题比较厉害的是编程的技巧吧,试想如果两边一直相等,直到最中间才...

2018-01-21 11:48:58

阅读数 344

评论数 1

hdu1257贪心水题 list.sort应用

这题比较简单,主要是list.sort的运用,策略:先将导弹的射程高度从大到小排序,之前需要记录导弹发射时时间上的相对位置。然后对排好序的list遍历,每次找到所有比开头导弹射程高度小的最大的导弹,删除这些导弹,设置一个拦截,然后重复,直到list为空。 这题主要时list 的运用不太熟练,首先...

2018-01-21 11:38:59

阅读数 133

评论数 0

西安icpc签到题。。

嗯,签到题都做不出来,思路我觉得应该没错,贪心:每次根据a[i]在b中找大于等于k-a[i]的最小的数,存在则加一,并把它移除然后接着查找,然而TLE了。。。难道用线段树?https://nanti.jisuanke.com/t/20750

2018-01-21 00:35:18

阅读数 87

评论数 0

java api之calendar首用

wannafly8的A题。。。看到首先想到java api 但是不知道哪里错了。。90%的通过率。。。 先贴着,有空回来研究,但是calendar的用法还是值得一记! import java.math.BigInteger; import java.text.ParsePosition; ...

2018-01-21 00:30:35

阅读数 94

评论数 0

贪心——区间选点

区间选点详情可以参照刘汝佳的紫书中的描述。这里大概叙述一下这类题目的做法。区间选点:给出n个区间,问至少用多少个点使得每个区间至少有一个点。做法:1、对n个区间按右端点从小到大排序,如果右端点相等则按左端点排序。 2、然后从排序后的第一个区间出发,设置当前覆盖区间右侧为该区间的右边。  3、只有当...

2018-01-21 00:26:18

阅读数 162

评论数 0

poj3414 bfs+路径打印

題目大意:给出2个水杯和目标的容量,输出经过fill drop pour三种操作的最少步数。 这题思路还是比较清晰的,可是就是不知为什么mle了,找不出来问题,先码着放这里,有空回来看。 mle: #include #include #include #include #include #i...

2018-01-19 10:06:12

阅读数 87

评论数 0

素数环(剪枝)nyoj488

这题的数据比较厉害,如果不进行剪枝的话肯定会TLE的,剪枝:如果素数环元素的个数为奇数时一定是围成不了的,因为如果是奇数个元素,说明奇数的数字比偶数的数字1个,所以一定不可以形成奇偶相隔的情况,也就是说会出现两个奇数相邻,而奇数+奇数=偶数,不为素数。代码:#include #include ...

2018-01-19 09:58:22

阅读数 100

评论数 0

poj3279 子集枚举+状态压缩暴力

题意:给你一个n*m的棋盘,有的棋子正面向上(0),有的棋子反面向上(1),问最少需要多少遍才能把所有的棋子变成正面向上?按字典序输出每个位置翻转的次数。这题刚开始想的时候,是想着dfs的,毕竟出现在dfs的专题里面,原本的想法是记录下为1的位置,那么翻肯定就要在它们的附近翻,然后遍历所有的翻法,...

2018-01-17 23:37:38

阅读数 113

评论数 0

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