FJWC2017&FJOI2017一试 游记
day1
早上是以前泉州七中的杨国烨讲课。(据说当时看新闻说是一对双胞胎一起上thu的其中一个)课题是图论/网络流。
下午第一道一开始推出来了一个之和面积有关的式子,然后觉得可以容斥一发,觉得细节太多(要求矩形和矩形的交)就拖到最后再写(结果没rush出来)。第二题看出来是支配树模型,然后觉得支配树写不动于是就写了纯三方的暴力。第三题是一个带区间覆盖字母,区间查长度小于等于k(k很小)的回文串个数的问题,没什么好的想法就写了暴力。最后0+90+30=120。第二题貌似数据非常水被我纯暴力过了90分!?(感觉整个FJWC的rp都被我掉完了)听了讲评以后发现第一题有一个细节相对于容斥没那么多的状压DP的做法(细节还是挺多的)。第二题居然暴力加个bitset优化除以一个32就能过了?!第三题听完讲评觉得做法非常神,直接manacher一遍以后线段树维护一下区间信息,然后区间前后k个暴力搞一搞就好了。。。
day2
早上是杨志灿(coolinging)讲搜索,好像他现在都已经大四了,然后貌似每年什么省夏省冬都有他来讲。不过讲得的确非常好就是了。据说貌似好几年的省选的省冬原题都是选杨志灿那场的(至少去年的那道神秘数是,前几年不太懂)。
下午第一题是一道我做过原题的区间DP,虽然我还记得做法并且很快就写完了,不过我貌似转移写错了,结果这题就爆0了QAQ。第二题细节码农数据结构,当时推出来是一个要维护区间每一项乘上一个等差数列的和,然后我到这里就不会做了,于是就交了暴力。第三题是一个跟斯坦纳树有关的提答,然而我不会斯坦纳树于是就写了最小生成树QAQ,最后炸成48分。最后的得分就只有0+20+48了,貌似排到非常非常后面了TAT。
day3
早上是汪文潇讲数据结构的技巧(听起来好可怕啊。。。),然后大部分都在讲题,没怎么教算法。什么气氛大家自行感受一下吧。以下内容来自上课时wwx说的话:
1. 区间加fib不会做?不是随便搞一搞就好了吗?
2. “你们都写过线段树吧?”
“没有。”
“啊~你们都写过线段树了。”
3. 这题怎么贪心?你贪一个给我看看。
4. (讲带link-cut链上k小值的时候)点权修改不是跟没有一样?
5. 强制在线的话就把扫描线的平衡树可持久化一下就好了。
不得不佩服汪队长强大的数据结构实力和功底啊!伏地膜orzorzorz。
下午第一道求置换的循环节。我一开始还以为自己把题目看错了,就想着为什么会出怎么简单的题?题目看了好几遍发现没问题。应该是拿来送分的吧?于是就大胆写了。
第二题求trie树上最长公共前缀和最长公共后缀的和的最大值。一开始猜了一个性质找到一个反例发现是错的(Escape好像也想到了,不过他没叉掉,然后就写了,惨)。于是就觉得要写后缀数据结构,写暴力弃。
第三题是《没有人的算术》的弱化?ziqian 和dick32165401 貌似做过原题考场上就accepct。我被那个集合循环递归比较大小弄晕了,在Paladin的指导下写出了O(n2)暴力成功爆0。
最后只有100+0+0=100,貌似同样掉到了很后面。后两题暴力至今不知道哪里写挂。。。
day4
早上是n+e学长讲课。讲了很多实用的数(pian)学(fen)和几(luan)何(gao)的技巧。标题是《如何缩代码、如何港记、如何骗分以及如何进队》课件和讲课都很有意思。
下午三道校内训练原题,我交了当时校内训练时写的代码(没交后来订正的)就去填坑了。
day5
早上是高闻远(ExfJoe)学长讲DP及其优化。前面概念讲了很多,好像我特征多项式听得不是很懂。。。然后后面是杂题选讲。
下午第一题不会发现暴力分挺多的就写了一个暴力= =b(结果暴力写错就很尴尬了)。第二题推出平方的背包DP,发现有60分,想了一会发现优化不了就弃。最后一题感觉是一个很丧的又树剖线段树又虚树又换根DP的大码农题,于是打满70分暴力弃。
讲评的时候发现三题的做法都很神。第一题好多厦门一中的神犇都会,好像是用线段树优化枚举。第二题好像大家都没推出一个结论,正解是推出那个结论以后用平衡树维护一下。。。第三题题解给的做法好像就是那样,不过非常码农。zzx考场上貌似用一种非常好写简便(?)的方法a掉了,具体怎么做还没去了解。
day6 (省选一试)
去附中的路上我还在看那道《交错和查询》的代码,因为我觉得可能会考这题。。。
刚进去的时候发现旁边坐的是熟人(zls)。打开题目的第一反应是怎么今年没有原题了?然后翻到最后一题发现是那道细节巨多的状压DP。然后考场上花了一段时间去写+调。中间有一段时间因为调不出来变得有些急,不过后来还是调出来了,有一个地方j打成i了(当时我)。做完原题开始看前两题,第一题刚开始题目看错,弃。然后就开始搞第二题,发现是一个图上的最大独立集问题,证明了一个结论发现是二分图(一开始我还以为是树,因为我证明的环是奇环,然后我就以为是没有环,后来构造了一个偶环的情况)。然后直接跑二分图匹配即可。然后就写+调+拍了2h。最后10min左右开始看第一题,想了一个DP,不过(因为太弱而)没去写,直接输出-1骗分。
最后成绩比较惨淡:10+10+100=120.当场rank25。看了一下t2有W有A有B有T,A只有一个。我想了一下,我第二题我和2n的暴力拍了那么多组数据都没有问题啊?为什么会WA呢?然后我回忆了一下,发现我自己生成集合的时候是把所有的数都存下来然后sort+unique一下,这样就没有重复的元素了。题目中说的明明就是集合啊,既然是集合的话那么默认是没有重复元素的,而且我考场的时候也问了监考老师集合是指不重集还是可重集这个问题,而监考老师却故意不回答并且也不向命题组什么的反馈。A掉的那个点可能就是随机的小点,然后可能重复的概率小一点就过掉了。然后我就去交钱申诉(特派员的黑钱渠道?)其他的申诉大多是:叫评测员调一下代码看一下错在哪,被卡常数要求重测,重测完分数没变╮(╯_╰)╭。评测员看到我的问题比较棘手和尖锐,于是说他们无法解决这个问题,并且还不让我检查数据,然后我就乱喷了一通(心里爽快多了,20块没白花,当然也不乏被)。于是这个责任就被他们几个之间像踢皮球一样地踢来踢去,最后就叫我写了一张纸质申诉草草了事。不过说到底还是我的问题,如果我自己能认真一点判清楚细节也许就没有这么多麻烦事了。
交谈中发现好像最后一题好多人被卡了常数。因为省冬的时候原题是2s不知道有没开o2,然后现在变成了1s没开o2。zzx就因为最后一题被卡常了没有ak(orzorzorz)。几个泉七的跟我说他们这道题写过三遍了结果考场上照样被卡常(因为这道是泉七那天出的题)。。。我好像常数比(fei)较(chang)小结果考场上就A了。。。这题在我们学校OJ上我貌似是跑最快的(总时间0.7s左右),然后第二名总时间就跑了4s+,剩下的都在6~7s间分布。最后我们学校除了我第三题都被卡常数了。。。
总结:这次挂得还是比较惨,不过貌似我这个分数段差的都不多(貌似可以再垂死挣扎一下?)。考挂归结的原因大概有这几个:
- 动作不够迅速,原题和第二题写+调+拍都花了太长时间导致时间不够而没去打暴力
- 策略不对,应该给第一题预留一些时间出来想+写,而不应该将时间都砸在第二题上。
- 写代码之前应该先想清楚了再写,这样能提高效率。
国冬马上就到了,还是希望国冬能加油吧!↖(^ω^)↗
貌似这段时间做的好多题题解都没补上,接下来我会花一些时间补上的。