• HAOI 2017 游记


    省选

    2017年4月23日

    流水账式游记,不喜勿喷.

    Day0:

      准备出发,上午敲了一顿板子,板子敲完了就打小游戏,老师也不管了.

      过程中各种奶,说什么今年一定考仙人掌啦,今年一定考字符串啦,今年一定不考FFT之类的.

      高二的同学都有点亢奋.毕竟最后一战了(~~).

      中午jzyz四人组吃了一顿聚餐.算是最后的道别,当然,不知道是谁与谁的告别.

      下午两点上车,3点半左右到达,幸好车上有空调,否则我们都要煮熟.

      在宾馆休息了一会儿后,四点左右去试机了.

      试机不错,调试了机子后,发现机子除了慢,并没有什么其他问题.

      对拍什么的经过调试也无大碍.很顺利.

      工作人员看起来也很负责,为了解决蓝屏问题将win7换成了xp,并且加了一些不错的软件.  

      心情一片大好.

      回宾馆的路上,与队友讨论了一番今年的题目可能会出成什么样子,各种立flag.

      晚上看小说看到10点睡觉.

      做梦梦到了好几次看到了成绩单,但是画面模糊,没有看到我的名字,很好,没影响心情.

    Day1:

      早上7点起来,叫醒syq,又浪费了很多时间后,差点没吃上饭.

      进考场,果断敲各种bat,makedata.cpp,right.cpp备用.再敲上常用的空白程序板子.

      题目下来了;

      T1:求去掉哪些边后,最大独立集的数目+1.输出可以去掉的边.(题意已经翻译).

      数据范围n到了10000,m到了150000.

      O(m*dinic(复杂度))枚举肯定不行,先标记个暴力50分吧.

      这时候我心情就有点紧张了,第一题会不会是个SB题?但我没过多研究二分图,无法找到性质,怎么办?

      郁闷的看第二题.

      T2一个后缀数组题目,但多组询问,n到了1e5询问,1e5

      又是这种感觉没什么思路的题,但暴力40 n^3还是很好搞的.

      T3:这不是某年WC的题目吗?处理所有环,然后扔线性基,玩个线性基最大值就行了.

      结果发现位数到了1000,我了个擦,一次线性基复杂度惊人.

      而且多组询问,每条加入边存在于一个区间,删除转分治就行了,但是如何计算加入一条边的贡献,GG.

      还是暴力,搞个玄学暴力吧.

      看完三道题,一点思路没有全是暴力,顿时抑郁了.

      然后剩下三小时码暴力.

      网络流,码起来容易.手玩小数据+眼查没问题就放一边了.

      后缀数组我昨天试机就敲了一遍,再次敲完,没问题,敲了40拍完写T3.

      第三题本来由于不开O2想着自己写个压位的Bitset,但是写到一半感到了恶心,替换成bitset算了.

      写写调调终于写完了T3.测了下样例一遍过,自己又够了几组数据没问题.

      不放心,把bitset换成int测一下,没问题,再眼查一下,不管了.

      然后这时候就已经快结束了,但马上延时了半小时.

      开始检查,发现第二题开个5000*5000数组搞个前缀Max即可优化到nQ,有60分.

      最后也就把三道题的暴力交了上去.

      出来,惊!stdcall直接就说问有多少个上两百的,Mike说他们做过第一题原题(后来我听数据范围不一样).

      好几位大神说自己要退役了,但实际上我感觉没什么,上午大家都暴力嘛,拉不开分的.

      吃完饭,回去很快就又开考了.

      这时候心情已经完全放松了,准备好好搞下午,争取AC一道.

      发下PDF.发现出题人各种锅,PDF上有很多错误,但还好不影响做题.

      第一题一眼DP,但状态转移不好做.

      第二题看完前半部分发现是个SB题,然后紧接着发现他换了比较规则(这出题人坑啊).

      没什么想法,20暴力吧.

      认为第一题更可做,准备全力搞第一题,虽然第一题看上去我也找不到转移的规律.

      先暴力码码.码完发现题意理解错了,每次是三个维度选一个加上一些1,而不是随意加.

      好,题目简单了不少.每个维度单独算,做DP即可.

      直觉上这道题和二进制中的1有很大关系.

      打个表看了一下后发现结论对了,然后想怎么状态转移.

      写了个log4 n的预处理,但调了很长时间调不对.

      这时候发现已经3点20多了,离结束只剩一个小时了,第二题暴力还没打.

      决定到半点再调不出来就弃了.

      看了遍程序猛地意识了自己之前的错误思路还残留在程序里.

      改掉,我直觉上,这次没问题了.测了几个手玩点,正确了!

      这道题,最困难的部分已经解决了.

      解决了转移问题,但还有障碍点问题(我后来才看到这玩意).

      不虚,直接套棋盘模型,但这么DP是o^2的.

      上NTT?没法上啊,都不是卷积上个鬼.

      难道是预处理转移搞分治NTT?算了没时间了,总比20分强.

      干脆写个记忆化吧(保佑数据水一点,o^2不要跑满).

      写完第一题拍完,去写第二题,暴力码了20分,然后眼查一下,就开始等结束.

      考试终于结束了.

      

      然后就是等成绩,中间听老师说上午最高的是我的90分,60分的2个,40一大堆.

      Mike等表示自己上午第二题写完拍完怎么着都不可能跌下60,怎么60分的这么少.

      感觉HA省又要出事故了,提心吊胆.

      

      和syq讨论了一下下午第一题,他的DP是O(o)的,我认为我的DP没问题.

      等到下午6点多,成绩出来了.从台阶上跳下去一看,发现自己rnk1了,然后看同校神犇的成绩,发现jjh和syq以及wyj都进队了.省队还有Mike,rapiz等,能进省队的人都很熟悉.

      然后就是看成绩分布,上午90,下午70,上午第一题第三题出错很正常,所以我也没怎么纠结,下午o^2被卡成50也在意料之中,很强的一点是syq下午近乎A掉了第一题.

      我很纳闷,难道我的DP是错的?还是那个DP还可以优化?

      接下来很多选手说上午的第二题的60对拍没问题,上午分却很低,不科学.我也觉得不是很对劲,HA又要出锅了.

      但天快黑了,我们必须走了,拷走了上午数据后坐大巴出发.

      在回去的路上,stdcall在通讯上提出空间开小了,发现一看确实如此,老师就拿电脑开始重测.重评完了上午150,正常了.

    Day2-4 

      最近几天确实过得很无语,因为河南省计算机协会一直不发最终成绩,我们也很心乱.

      虽然从我们自己测的成绩我是没问题的,但结果最终会影响我们学校的.

      

      同时这几天也爆出了一些锅:

      1.内存开小 

      2.没开忽略制表符和行末空格.

      (HACF怎么这么不走心呢?这些都是lemon非常需要注意的啊,我来搞评测绝对不会在这种问题上出锅).

      3.下午第一题数据过水,所有障碍点都不影响最终答案.

      (正解居然O(o^2),卡常技巧先进啊).

      (最后我用最强的数据测我的程序,是会被卡一些的常数的,但我写了记忆化,所以复杂度近乎O(o)了).

      (我猜出题人没看出来自己的数据的问题,否则这样卡常是会被裱的).

      4.下午第二题数据过水,我的原来是准备水20的程序水了60.

      

    2017-04-26

      终评成绩出来,评测结果与本校评测结果差不多,我认为差不多算是个结束了.

      jjh和qyj准备申诉,但是我认为申诉理由并不是很充分,因为数据的话,只能说不好,不能说错误了.

      对此事我中立.当然也可能是我不是当事人感受不深吧.

      HAOI算是结束了,这件事也可以告一段落,下一步就是CTSC和APIO了,这些日子HAOI也确实影响了很多人,确实到了干些实事的时候了.

      以后再见了!

      (我第一次写这么长的游记,很赞啊).

      

      

      

      

  • 相关阅读:
    6章-项目进度管理-day5
    常规正则表达式
    axios删除接口
    elk
    英语笔记
    升级打怪
    用computed实现watch的保持子组件与父组件值同步
    vertical-align不生效的问题
    css居右
    使用maven创建spring工程出现配置文件打不开/不存在的错误
  • 原文地址:https://www.cnblogs.com/chadinblog/p/6760083.html
Copyright © 2020-2023  润新知