1001
线段树,考察对于线段树基本操作的熟练程度,省选的时候,我定位为是一个难题的,结果被成都七中大牛们1个小时不到就秒掉了,55555555555555
1002
数学推导题目,来源于我的组合数学作业……可以看成是坐标系中,从(0,0)点走到(m, n)点,并且跟y=x-1这条直线不相交的方案数。(0,0)点关于直线y=x-1的对称点是(1,-1),从(1,-1)点走到(m, n)点的所有方案均一定会与直线y=x-1相交,对于这些方案,将从(1,-1)点到与y=x-1的第一个交点之间的路径关于y=x-1对称翻转过去,就可以得到所有不满足题意的从(0,0)点走到(m, n)点的方案,于是最终答案就是C(n+m, n)-C(n+m,m-1)。
原题的取模的数是一个素数,但是在省选的时候,有些大牛知道结论,于是又被秒了,5555555555555555555,所以这次,把取模的数改成了今天的日期,同时也祝大家五一快乐,呵呵
1003
这个题本来想让大家去八卦一下roba的,但是从ACM_DIY群上的反应来看,貌似大家都不是很水,哎,真让人失望……
将每个身高看成是一个点,每一组情侣的2个身高之间连一条边,于是问题转化为给某些点分配至少一条边,每条边只能被分配一次,使得没有分到边的点的最小身高值最大。省选的时候,题目的身高区间范围只有10000,被很多人用匹配搞过去了,于是这次比赛扩大了身高的区间范围。实际上可以观察到,对于一个联通块,如果它是一颗树,就必然有一个点不能分配到边,于是我们令其中身高值最大的那个点分配不到边,于是剩下的点都能分配到,而如果不是一颗树,那就所有点都能分配到边了,基于这个结论,剩下就是利用并查集实现的问题了
1004
简单几何题,在AB边上做3分,然后到CD边上再做一个3分,这样嵌套3分就可以了,3分的单调性是很显然的。另外可以观察到,要么离开AB的时候是从某个端点离开的,要么到达CD的时候是到达某个端点的,要么就是在AB与CD的交点上转向的,于是另一种方法是枚举一个端点(或者AB与CD的交点),然后在另外一条线段上3分就可以了
1005
基于单调队列优化的DP,朴素的O(T2MaxP2)的DP是显然的,然后我们可以另外开一个一维数组,用于维护可以用来转移的所有状态,于是T的平方就被降掉了,然后在状态转移的时候,可以采用基于单调队列优化的方法,这样就可以将MaxP的平方也降掉了,最后算法的复杂度是O(TMaxP),关于单调队列优化的方法,另外推荐一个题目,POJ2823
1006
这个题目一开始出了3个版本,另外2个版本分别用于UESTC校赛的初赛和决赛了,有兴趣的朋友可以去CDOJ(acm.uestc.edu.cn)上继续AC,题号分别是1161和1198。
这个题的做法是将所有的ant按速度排序,然后考虑相邻蚂蚁之间的追逐问题,找出时间最短的就是答案
1007
出题的时候,本来想的年份范围是从1000年到9999年的,于是就是一个枚举年份的水题,后来翻译的人理解错了,于是就把题意搞成现在这样了……呵呵!
这个题的做法是首先枚举合法的日期,然后翻转求出年份的前一半,然后再在中间构造回文数来生成年份的后一半。先预处理,将前4000000个回文日子全算出来,然后排序保存好,这样对于每次询问,就可以在O(1)的时间内给出答案了。这个题需要特别注意的是,由于年份不允许有前导0,因此,对于11月20号这样的日期,显然是不存在回文日子的,另外需要特别注意的是对于2月29号的处理,需要判断闰年
1008
这个题是一个经典的博弈游戏,开场10分钟即有人通过就可以看出来他们应该是有模板的,这个题需要使用到nim积的知识,出在这里只是希望大家多了解一种知识而已,呵呵