12 2015 档案

摘要:题目:http://codeforces.com/contest/608/problem/B字符串a和字符串b进行比较,以题目中的第一个样例为例,我刚开始的想法是拿01与00、01、11、11从左到右挨个比较,希望能找到一些规律,结果并没有。。。其实,如果我们能从整个比较过程来看这个问题,整个过程就... 阅读全文
posted @ 2015-12-24 15:33 Esieve 阅读(242) 评论(0) 推荐(0)
摘要:定义无限大的数INF时,写成#define INF 0x3f3f3f3f更好,这样在一些操作中不会溢出,还有可以用memset函数进行赋值。 求两直线的交点这里是定比分点公式:http://baike.baidu.com/view/2668546.htm 比较double类型的数值时,#define 阅读全文
posted @ 2015-12-23 16:40 Esieve 阅读(189) 评论(0) 推荐(0)
摘要:题目:http://acm.hdu.edu.cn/showproblem.php?pid=4027先说这个题的关键:这道题不同于普通的成段更新,需要对每一个值进行求根操作,而如果每次都对区间的每个点进行求根操作的话,复杂度肯定很高。所以,第一个关键点就是,一个数不断开方后的结果,最后一定会变成1的,... 阅读全文
posted @ 2015-12-20 17:23 Esieve 阅读(364) 评论(0) 推荐(0)
摘要:原题:http://acm.hdu.edu.cn/showproblem.php?pid=5592线段树的变形,先说思路。题目中给出了当前节点之前的逆序对数,则p[i]-p[i-1]就是对于p[i]来说,新增的逆序数,也就是比p[i]大的数,所以这时要考虑倒着处理,用线段树维护哪些数已经使用,哪些还... 阅读全文
posted @ 2015-12-16 14:20 Esieve 阅读(337) 评论(0) 推荐(0)
摘要:更新:这是中文题目的链接:http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=659&pid=1001这道题还可以用优先队列来做,优先队列的特性可以很好的返回两个队列中b最小的值。下面说过了,c[i] += c[i-... 阅读全文
posted @ 2015-12-15 20:39 Esieve 阅读(501) 评论(0) 推荐(1)
摘要:题目链接: http://www.codeforces.com/contest/606/problem/C 一道dp问题,我们可以考虑什么情况下移动,才能移动最少。很明显,除去需要移动的车,剩下的车,一定是相差为1的递增序列,而且这个序列一定也是最长的,例如4 1 2 5 3, 4 5是需要移动的, 阅读全文
posted @ 2015-12-15 10:48 Esieve 阅读(171) 评论(0) 推荐(0)
摘要:公式:实际操作中,有一点需要注意,例如从a[0]-a[n-1]保存了n个点的坐标信息,累加求和之前,一定不能忘了a[n]=a[0],然后从1操作到n,例如:1 double getarea(){2 double sum = 0.0;3 a[n] = a[0];4 for(in... 阅读全文
posted @ 2015-12-14 23:18 Esieve 阅读(1784) 评论(0) 推荐(1)
摘要:1、归并排序求逆序数http://acm.nyist.net/JudgeOnline/problem.php?pid=117在归并排序的过程中,比较关键的是通过递归,将两个已经排好序的数组合并,此时,若a[i] > a[j],则i到m之间的数都大于a[j],合并时a[j]插到了a[i]之前,此时也就... 阅读全文
posted @ 2015-12-05 14:56 Esieve 阅读(3001) 评论(0) 推荐(0)