- 博客(29)
- 资源 (2)
- 收藏
- 关注
原创 hdu-1255-覆盖的面积-线段树
记录3个变量。sum[i]:当前区间被覆盖2次及两次以上的面积。num[i]:当前区间被覆盖1次及一次以上的面积。cover[i]:覆盖的lazy标记。对于每一个区间.更新操作如下:void push_up(int_now){ if(cover[rt]==0) { num[rt]=num[rt<<1]+num[rt<<1|1];
2014-05-30 12:09:05 1297
原创 hdu-4605-Magic Ball Game-线段树+离线操作
以前用树状数组做过一次,现在用线段树再刷一次。。。首先必须先离散化。。。然后建立2颗线段树,第一颗表示往左走,每个节点的值的分布。 第二颗表示往右走,每个节点的值的分布。然后根据左右走的关系,判断出x,y的值。#pragma comment(linker, "/STACK:1024000000,1024000000")#include#include#inclu
2014-05-29 14:55:42 1347
原创 hdu-4578-Transformation-线段树
当一道题目,使用__int64超时,使用int就能A的时候,我想,这个题,不是一个好题。。。。。add[i]:记录加的lazy标记mul[i]:记录乘的lazy标记num[i]:记录数的lazy标记sum[i][j]:第i段,j次方的和。除去lazy标记的下放,这完全就是一道水的线段树的题目。。。lazy标记如何下放呢?1,首先查看num标记,如果存在,果断下放。2
2014-05-27 15:32:26 1447
原创 jsp连接mysql----------第一篇技术类文章
今天做作业连了一天的mysql。最后我痛定思痛,决定从0开始学习jsp,省的又面临不会的局面。忙活了一晚上,终于把数据库连接上了,不过,好伤心啊,我连个数据库都这么墨迹。。。<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServer
2014-05-27 01:44:45 1457
原创 hdu-4747-Mex-线段树区域更新
部分题解摘抄cxlove,传送门:http://blog.csdn.net/acm_cxlove/article/details/11749383题目:给出一个序列,mex{}表示集合中没有出现的最小的自然数。然后 求sigma(mex (i , j)).做法:考虑左端点固定时的所有区间的mex值,这个序列是一个非递减了。。。首先要明白。初始就是求出mex[i]表示 m
2014-05-26 15:48:25 1229
原创 hdu-4302-Holedox Eating-线段树-单点更新,有策略的单点查询
一开始实在是不知道怎么做,后来经过指导,猛然发现,只需要记录某个区间内是否有值即可。flag[i]:代表i区间内,共有的蛋糕数量。放置蛋糕的时候很好操作,单点更新。ip:老鼠当前的位置寻找吃哪一个蛋糕的时候:1,要寻找0-ip这个区间内,位置最大的一个蛋糕的位置,记为ll。2,要寻找ip-n这个区间内,位置最小的一个蛋糕的位置,记为rr。找到ll,rr之后,就可以根据l
2014-05-24 00:39:13 1075
原创 每日总结-05-23
开始刷线段树。其实早就应该刷了,不过前几天由于考试,就没做题。。。今天刷了6个线段树,感觉刷线段树的感觉没有了。大脑有点迟钝了。。。还是得好好刷题啊。。。。------------------------------------------------------------------------以后每日总结里面不写题目了。。。。。
2014-05-23 23:53:01 734
原创 hdu-1540-Tunnel Warfare-线段树
lmax[i]:i区间内,从左往右,连续的最大长度rmax[i]:i区间内,从右往左,连续的最大长度val[i]:i区间的长度。#include#include#include#include#include#includeusing namespace std;#define INF 99999999#define lmin 1#define rmax n#def
2014-05-23 20:44:50 1280
原创 hdu-1698-Just a Hook-线段树-区域更新,区域查询
flag[i]:标记i这个区间的值。val[i]:i这个区间的长度#include#include#include#include#includeusing namespace std;#define INF 99999999#define lmin 1#define rmax n#define lson l,(l+r)/2,rt<<1#define rson (l+r
2014-05-23 20:40:35 828
原创 poj-3264-Balanced Lineup-线段树-区域查询
区域查询操作。ma[i]:i区间内的最大值mi[i]:i区间内的最小值#include#include#include#include#includeusing namespace std;#define INF 99999999#define lmin 1#define rmax n#define lson l,(l+r)/2,rt<<1#define rson
2014-05-23 20:37:48 737
原创 hdu-1166-敌兵布阵-线段树-单点更新,区域查询
线段树的单点更新,区域查询操作。#include#include#include#include#includeusing namespace std;#define lmin 1#define rmax n#define lson l,(l+r)/2,rt<<1#define rson (l+r)/2+1,r,rt<<1|1#define root lmin,rmax,1
2014-05-23 20:35:02 861
原创 zoj-1610-Count the Colors-线段树-区域更新,单点查询
线段树的区域更新,然后单点查询。x1 x2 c:区域更新x1-x2为c。全部染色之后,从0-8000依次查询每个点的颜色。然后存贮每一种颜色有几块。#include#include#include#include#includeusing namespace std;#define lmin 0#define rmax 8000#define lson l,(l+r)/
2014-05-23 20:33:55 970
原创 每日总结-05-19(AC自动机结束)
今天下午讨论了一下校赛的题,终于最终拍板,把校赛的题目定下来了。然后今天A掉了4个AC自动机的题目。终于完成了AC自动机专辑里面的15个题。至此AC自动机完全结束。明天开启线段树专题。。。。。--------------------------------------------------------------------------------------------------
2014-05-20 00:00:30 1145
原创 每日总结-05-18
今天起得比较晚,又浪费了点时间,真可耻。。下午又为校赛出了俩题,至此,校赛的四道题目已经完毕。又检查了一番,没有错误,就等待着明天的汇总了~。AC自动机的题目今天就刷了三道,还是没有完成之前的目标。现在vj也进不去了,想通宵,都不给机会~~只能等明天再刷完了,拖延不是一个好习惯。----------------------------------------------------
2014-05-18 23:36:38 937
原创 每日总结-05-17
今天真是极度的不爽,很不爽!!今天下午加了一场训练赛。没想到加题加难了。。。加完题晚上一直在写JSP的作业,怎么也写不完,怎么也写不出来。。。晚上回到宿舍也一直再调,结果最后调好了,提交作业的时候发现提交时间截止了,怎么能这么悲伤。----------------------------------------------------------------------------
2014-05-18 00:15:07 1196 2
原创 每日总结-05-16(再见强哥有感)
今天下午做了一下之前晚上的CF,晚上强哥就来了。又见到强哥了,感受挺多的,还记得大二上学期的区域赛就是强哥带着我们打的,但是没打好,给强哥丢人了。这次强哥来,我省赛又打成那样,真是没脸见人了。。。想想现在已经坚持做ACM三年了,一路走来,颇为艰辛。自己总是没有一个固定的队友。大一的时候,ZRQ和YST跟我一队,当时我们还是一个宿舍,讨论问题什么的都挺方便的。可是后来的时候,他们俩都退队了。
2014-05-17 00:14:12 1437 7
原创 每日总结-05-15
今天去上了jsp的上机,感觉以前似乎落下一些知识点。但是没事,我相信我会学会的。。。今天做了两道AC自动机的题目,感觉跟伸展树一样,AC自动机越来越水了。。。下午为校赛出了两道题目。虎哥哥告诉我,我要出四道题目。今天先出两道,明天再出两道,爽歪歪。今天也有一些事情让我很不爽,sad,或许影响到了些许的效率。AC自动机还有不到10个题,打算这周刷完,然后进军下一个知识点。奋斗吧,小少
2014-05-15 21:35:01 885
原创 山东省第五届省赛总结
省赛终于过去了。感觉准备最充分的一次比赛比的最差,心里很伤心。省赛之前,目标一直很明确,拿个金牌,向冠军冲刺。没想到最后拿了一个银牌。真的是讽刺。热身赛的时候,一开始机器很搓。根本运行不了程序。然后就找来技术人员。技术人员搞了半个小时,也没搞出来个毛。最后还是机器自己莫名其妙的能用了。然后我就上手敲B的随机题。没想到两次就过了,太开心了。然后专心看c题。一开始看出来的做法不对。后来离结
2014-05-15 18:30:02 1559 7
原创 每日总结-05-14
为了准备区域赛,决定每天都写一个总结,记录一下今天做了什么事情,如果没做啥有意义的事情,就不总结了。----------------------------------------------------------------------------------------------------------------------------------------------------
2014-05-15 00:28:44 953 2
原创 HDU 2222-Keywords Search-AC自动机模版题
纯粹的模版。。。学习模版总会是一个快乐的过程。。。。#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;const int
2014-05-14 15:11:06 853
原创 HDU 4059 The Boss on Mars-矩阵+容斥
错了29遍,终成正果。。。。。根据题意,很容易的可以想到容斥。然后的问题就是如何求sum(n)=1^4+2^4+3^4+....+n^4;有三种道路:很显然:1^4+2^4+3^4+....+n^4=(n^5)/5+(n^4)/2+(n^3)/3-n/30;则1,用java的大数去敲这个的代码。2,用c++敲,但是用到分数取模,求逆元。3,用c++敲,但是不用这
2014-05-13 23:43:37 1342
原创 sdutoj-2607-Mountain Subsequences
dp[i]:以第i个字符为max,左边的可以构成的上升子序列的个数 。 dp2[i];以第i个字符为max,右边的可以构成的下降子序列的个数 。 num[i][j];在第i个位置以字符j为结尾的上升子序列的个数 num2[i][j];在第i个位置以字符j为开头的下降子序列的个数很容易的推出状态转移: int x=str[i-1]-'a';for(j=0;j
2014-05-08 17:21:16 1136
原创 hdu-3507-Print Article-斜率优化
参考资料:http://www.cnblogs.com/ka200812/archive/2012/08/03/2621345.html我的理解:备注:(i)代表只含i未知数的式子形如以下表达式的状态转移:dp[i]=dp[j]+(j,i);dp[i]=dp[k]+(k,i);假设对于i状态时,选择j状态比选择k状态更优.那么dp[j]+(j,i)如果上式可
2014-05-06 18:22:44 985
原创 wikioi-1748 瑰丽华尔兹 -单调队列优化DP
根据题意,很明显可以推出DP方程。假如只考虑向左的方向:dp[t][i][j]: 第t个时间段末滑行到i,j最长滑行的距离。dp[t][i][j]=dp[t-1][i][1..k]+(j-k)=dp[t-1][i][1..k]-k+j(k最终时间复杂度为O(n*m*k)#include#include#include#include#includeusing nam
2014-05-05 12:42:35 1356
原创 hud-3530-Subsequence-维护两个单调队列
维护两个单调队列,一个存储当前点之前的最大值。另外一个存储当前点之前的最小值。若最大值与最小值之间的差大于k,那么就把最大值和最小值中位置靠前的往后移。#include#include#include#include#includeusing namespace std;//#define INF ((1<<30)-1)#define INF 0xfffff#defin
2014-05-03 21:53:00 1024
原创 hdu-3401-Trade-单调队列优化的DP
单调队列入门题。。。dp[i][j]:第i天,手中拥有j个股票时,获得的最大利润。若第i天不买不卖:dp[i][j]=max(dp[i][j],dp[i-1][j]);若第i天买 :dp[i][j]=max(dp[i][j],dp[i-w-1][k]-(j-k)*ap[i]);若第i天卖 :dp[i][j]=max(dp[i][j],dp
2014-05-03 19:44:31 1094
原创 fzu-1894 志愿者选拔-单调队列
转战单调队列,争取省赛前做完。。。。这个题是很裸的单调队列。不能用stl让人很蛋疼。。。。就是用一个队列保存当前队伍的信息,如果来了一个大的,就把前面的小的挤掉。#include#include#include#include#include#includeusing namespace std;#define maxn 55000#define INF 99999
2014-05-02 20:52:50 1206
餐饮管理系统设计说明书
2014-12-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人