中山纪念中学2015年暑假集训总结

      看着阳光在地上洒下的影子,在纪中的校石上矗立的黑影,我踏进了纪中这所校园。
      阳光正盛,正值回忆。
      Day1被一天一套题吓傻。突然明白了纪中OI强盛的原因。

#include <iostream>

using namespace std;

int main()
{
 while (true)
  cout << "Welcome to ZSJNZX!" << endl;
 return 0;
}
天呐噜有兴趣的可以编译玩玩。
机智的我开始复习一些学过的东东。
当然不得不说那天的题很神,t2的证明坑了我一个钟,最后高精度没写完只好交了发暴力= =最后还是没有勇气在下午讨论上面公布我的证明。3456恭介的法则
很明显是这样的而不是观察找出来的:
考虑用m替换掉n!,然后我们发现这个是两个向量共线的充分条件,明显x和y大于m向量的模,然后我们把其中一个向量拆分,成为m向量和k向量(共线同方向)的和,然后我们求其数量积,发现出来一个神奇的东东就是m^2/k,想要保证答案是整数那么这个东西必须是整数,所以我们直接暴力解这东西就有30分了,但是很明显我们可以用FFT来写,这样期望得分就是100了,但是我们是追求不写FFTLCT之类鬼东西的快感,于是我们把m和k因数分解,于是就直接相乘统计答案就可以了。因子个数就是(2*e1+1)(2*e2+1)……(2*ek+1),每个e为n!的因子

Day2 BZ的模拟题,吓傻+1,看到t1题目直接开始码,然后被教训了一通= =然后还是码完了……= =t2直接hash一发结果被卡了函数10分……事后试了好多素数结果都是90,然后看到别人200000直接过了= =……hash卡素数没人性……t3隐隐约约觉得可能是逆序对最后还是没敢码,暴力写残了10分真是悲惨。OrzWYX240太神了。


      机智我们来到了day3.……签到题的一天……一看是堆专题然后得意忘形忘记了维护哈夫曼树的平衡,然后合并果子2光荣的只有10分= =出数据真良心还给了10分……OrzWZD和未知数(广铁一中)


      Day4太强大的t1,果然我的做题习惯不好结果t1纠结了2h都没有看后面的题最后我能力不足DP爆零,真是悲伤,赶快花了一晚上恶补了下树形dp,第二题最后才看然后一看看出了正解……so sad……下午被郭隆同学一番教训结果是我的语文和他的一样的原因= =


      Day5day6都跪了全是dp,改完了突然觉得已经没有什么能难道我的dp了?


      Day7突然发现自己的心态不是很对,一道题看不出正解就不去写了,这也正是我为什么一直排在中间的原因吧,t2铺砖问题矩阵快速幂太神了已经让我没什么欲望去改了= =走的时候再写掉吧。


      Day8作为第一个周末自然要把昨天t3新壳栈A了啊,然后开始了我改打C++的信心,下载了一个CB开始学习,写完暴力去交,70?!!!!!!!一定是我的姿势不对,开始写循环队列,然后又去交了一发,还是70= =难道C++还要像pascal一样不断刷才能刷过吗?然后楼上大神说求余很慢的于是写了不求余的,然后又挂了,又听说swap很慢的,于是我又写了一个不swap的,然后又挂了,最后才发现是是cin和cout的问题,才发现是iostream输入输出流太慢的问题,于是开始学习C的输入输出流和读入优化,直到此时我才发现原来输入输出这么重要以前写P的时候完全没感觉到。


      Day9我操起C++这等神器开始写题,t3准备开始写线段树的时候被同桌劝阻了下然后最后居然还是没有写……结果事后写了发结果A了,下午第一次上去讲题好兴奋,但是发现t3除了第一个点一定要放在第一个之外其他的就是裸的线段树啦……所以完全不知道怎么讲难道走上去说这是裸的线段树但是我们要注意细节于是把要放在第一个点然后就没了= =结果果然大家完全不明白发生了什么……


      Day10休息改题,上午颓了一道FFT,下午一道萌萌哒的主席树,晚上用LCT写了一道很简单的题(那题正解是最小生成树)然后不知道哪里写挂了最后还是没有交,发现那天都写了这么恶心的题那为什么不去把铺砖问题做了……


      Day11总之,t1我有暴力我自豪,t2我有暴力我自豪,t3,我有暴力我自豪,啊呜, t1居然把鸽笼给忘了,回去复习了下数论,t2一个类似皇宫看守的数论 ,结果发现不知道是不是哪里写错了结果一直有4个点运行时错误 t3完全没看懂什么情况独立集不是用LCT或者并查集维护的吗= =覆盖集不是最大匹配码,什么情况这是,结果题解清楚的写着不能把它当做图来考虑,果然我还是图样图深破,晚上改完题把极大独立集复习了一番。


      Day12 啊咧居然是DP专题?!!!作为认真改完前面题的人表示dp什么的除了插头其他完全不惧,机智的我很快写完了3道题的正解,t3作为一个过来人表示扩展欧几里得什么的其实还是不难的,于是愉快地等了1h的时间看对拍,结果发现t2的输出在本地是可以跑的但是在题库上面就被当成字符串来输出了,机智的我看到成绩之后一分钟就AK了5555555第一次在比赛中AK的机会就这样被我浪费了。下午继续复习了Qtree线段树还有重载运算符的高精度tarjan之类的鬼东东渐渐发现自己的状态回来了


      Day13 被最后10分钟的题目描述改动坑了一发,本来已经调出正解来的5555 t2挺神的写完后死都超时,怂恿WWT交了一发发现他也是超时,结果富爷用root开了O2愉快的过了,我只好打了一个点。


      Day14 t1直接暴力统计了答案,结果这居然是正解这句然是正解这题也太没质量了一点。T2我之前补的独立集起了效果机智的我顺手A了它。然后t3一直在想枪连同分量怎么做结果还是没想出来,富爷的讲解这是让我醒悟,为什么我忘记了缩点大法,还有就是拓扑排序居然都一直在写错真是不应该结果最后还CB推进了一番。


      Day15和GZF愉快地中山一日游,东西好好吃啊嗯嗯嗯呢呢不过实际上还是没有去什么地方。晚上颓了NOI2014d1t1真是没什么技术含量……


      Day16 A组的比赛真是丧心病狂,完全想不出正解结果还是没怎么写暴力,最后排名一出来发现要是我认证写了暴力就rank1了啊啊啊啊啊真是怨念……= =(于是乎开始认真写暴力)改题时候get了一发解同于方程组的正确姿势(其实是扩展baby step giant step一直写错),复习了离散对数和原根,然后get了二路归并解法和普通做法= =,最后本着绝对不欠题了的想法改完了哈哈哈哈哈哈


      Day17完全没什么难点,三道一眼题连t3数据范围都很小,除了t2之外暴力都直接过了……终于在第17天的时候AK了真是怨念,于是去省选组看了一眼题,t2t3好眼熟= =我绝对做过,本着颓的心态写完了正解……其实也没有多少代码量真是迷醉,话说这里的人居然没做过这不科学= =t4我连题目都没看懂索性不做,t1数据范围认真给出来了各种颜色值的范围(?居然不是n的范围真是不给我暴力的空间),居然正解又是二分答案……这让我这个从小就被灌输模拟退火二分答案都是水法都是暴力的人怎么活……端正心态重新来了一发一下就过了= =。


      Day18又A(shui)K(guo)了,t3后来才发现居然有那么简单的方法建一个栈,然后直接用手算的矩阵就行了,t3我有暴力我自豪,然后暴力过了?!!不就是一个用矩阵的暴力嘛……还是暴力反算矩阵……结果居然过了= = 还是深深的不科学,事后熊老师还是和我说了一下语言种类的问题,可能最后我还是会回去写pascal吧,于是下午把大家的想法综合了一下用pascal写了出来,不过居然没有我的暴力快真是不科学.


      Day19就是萌萌哒的今天啦,早上把bzoj1023的仙人掌看了下题解做了下,几个月前我写了300+行才过的题目早上居然写了80+就过了,果然get题目正确的姿势才能使自己的代码量大大减少。
      这些天成功复习了不少的东西并且找回了颓了5个月的状态,并且学会了不少的新姿势,对这些算法的使用也更上一层楼,不过扫描线计算几何什么的果然还是太神了还有很长的路要走啊
PS万一我去了中大的出题组我一定会坑死泥萌的,什么卡SPFA,卡快排,卡hash,卡凸壳,卡常数什么的……算了不谈这么久远的事还是愿我们明年再见把,JZ的题太神了我有暴力我自豪

你可能感兴趣的:(集训总结)