Day-Inf:

去年China-Final一道数据结构题的FB送我进WF。

今年课表意外地满,好几天都是早上8点一直上课上到晚上9点,作业也相对较多。敝队大约每个星期只能训练一个下午,有时候甚至一整个星期都没有机会训练。

除去ICPC Camp,今年大概只组队训练了7场,浙江省赛还因为内存原因少过一道动态凸包。直到WF前,我也就是单人刷完了WF2014、WF2015以及绝大部分WF2016,训练时间实在是不够。队友也已经大四,整个学期都很忙,水平肯定有所下降,在WF前一周稍微写了写题找找状态。


Day-1:

一下飞机就发现忘记开通全球漫游服务,这意味着这一周都要在“无服务”中度过了。

在San Francisco旅游了一天,傍晚6点回到宾馆,因为时差问题非常疲惫,直接睡到第二天。


Day0:

经过多次转机抵达Rapid City,发现美国插座与中国的差异,意味着接下来一周给电脑充不了电。同时发现这个地方非常寒冷,一边穿羽绒服一边吃感冒药。

酒店内部非常漂亮:


Day1:

旅游日,早上去了著名的Mount Rushmore National Memorial参观。

因为时差没倒过来,中午回到酒店就直接睡下了,一醒来晚上8点钟,神奇的是在这里晚上8点钟太阳依然高照。

睡醒之后掏出电脑切了WF2013的7道简单题,结果写个网络流还被卡了ISAP,感觉过几天比赛药丸。


Day2:

开幕式日,在会场娱乐区和qls、tls一起玩游戏,感受到了qls卖队友能力有多强。

不得不说外国的天真是蓝:


Day3:

这天是热身赛,进场时被要求穿队服,于是回酒店折腾了半个小时。明天一定要准备充分才进场,不然肯定来不及。

热身赛都是以前WF的原题,一副默写大赛的样子。队友测试完环境,测试完Java、Python之后,还有10分钟的时间,问我要不要接着写。于是我开始rushWF2015的那道BFS题,写完编译都不测,交上去已是最后一分钟,结果居然AC了。热身赛就这样AC了10题,Rank7,感觉正式赛的RP全掉光了。


Day4:

最重要的一天来了。赛前老刘对我们说,来WF主要为了抢FB,而且只看题数不看罚时,于是我们就制定了先抢FB以及瞎提交的战略。

比赛开始后,我读了H题,想了大约5分钟,并不会做。队友则读了D题,并将题意告诉我,我感觉是个凸包题,但是仔细一想却发现好像并没有这么简单,一时半会儿也不会做。就在这时,场内传来了一阵掌声,我意识到全场FB已经出现了,于是让鸟神去跟。鸟神写完E题,提交上去返回WA。他认为是二分次数过少,于是改成了1000次,仍旧WA。他只好将代码打印,换南神去跟I题的榜。

因为队友WA了签到题,加上抢FB的欲望愈演愈烈,我根本不能静下心来思考,D和H都毫无思路,甚至读新题都有点读不进去。E题代码送来之后,我帮鸟神看了代码,发现他的二分上界居然只有区区1e6,仔细一算的确不够,应该是1e6+1000。为了保险,他改成了1e9,终于在27min时3Y了敝队这场比赛的第一题。南神I题也写完了,提交上去得到了AC,给我们带来了信心。

南神接着跟F题的榜,而我则在D和H之间斟酌。D题$n\leq 500000$,而H题$n\leq 10000$,从常识上来看应该D更加可做。我分析出D题两个序列都可以贪心处理成单调下降的序列,之后怎么优化并没有头绪。这种题说不定会有决策单调性?如果过了那是血赚(当时这题还没有人拿到FB),要是不过也不亏。于是我就尝试着写了一发利用决策单调性的分治,一遍过样例,正准备交时,发现已经有人AC了。交上去之后,跑了相当久的时间,但是还是WA了。这也没什么,毕竟我只是瞎猜了一个结论。

因为瞎提交战略,我开始各种乱搞,比如小范围暴力,大范围分治之类的,又连着交了两次,还是WA。因为没有其他题可写,于是我开始造数据验证决策单调性。打表发现随机数据下,它的确具有决策单调性,写了暴力对拍几十组数据也没有发现问题。这时我就慌了,毕竟这种对拍拍不出的情况从来没有遇到过。这时南神读完了K题,想上机打表找找规律,于是我把D题代码打印,将机位让给了他。

这时榜上还有A和C题被人AC过,A题是个几何,于是我们决定先开C。C一副网络流的既视感,和网络流队友一起讨论了大约十分钟之后终于得到了比较靠谱的做法,于是换他上去写了。131min时,C题1Y,我们的信心回来了一些。

接下来我们讨论了A题,感觉枚举两个顶点然后贪心延伸并没有反例,似乎比较可写,于是准备写,但是D题一直WA着也不是个事,我就决定先把D处理掉。因为这时感觉FB已经没法抢了,所以冷静了下来。经过证明,我发现D题的确是具有决策单调性的,但是不知道为什么WA了。于是我对着代码瞎改,比如把不合法的决策的贡献从0改成负数,然后爆了几发OJ,依旧是WA。这时南神将K题题意告诉我,是说将$s\leq 100000$个长度不超过$10$的串按在长度为$n\leq 1000000$的随机串中出现的概率排序。我说这个$n$那么大一定是没用的,大概和$1000$取个$\min$然后暴力DP就好了。他觉得很有道理,就上去写了,却返回了WA,他认为是他写错了,于是打印代码下来查错。

这时我突然意识到,如果分治先处理的是不存在合法决策的点,那么无论它选哪个点作为最优决策,都会破坏左右子区间的决策,这种点应该在一开始就被剔除。听说WF的评测机一秒能跑2e9,所以在修改之前,我尝试着交了一发暴力,不料TLE了。于是我重新修改预处理部分的代码,剔除了非法点,提交上去终于得到了AC。D题在第182分钟8Y。

这时看看榜,发现A题过了一片,D过的比我预想的少,而且5题甚至位于奖牌区,感觉写掉A之后再开一两题并不是难事。于是我信心大增,掏出几何板子愉快地抄起了A题。在237分钟时,终于调过了A题的样例,结果返回了WA。这也正常,几何题一般都有坑。我随即手出了一组数据,发现果然错了,枚举的线段本身就不在多边形内的情况会出错,改完之后仍然WA,也再没有构出过能让自己错的数据。

南神和鸟神重新读了一遍K题,发现数据范围读反了,瞬间不会做。此时榜上还有L题过的比较多,于是他们去搞L了,我接着调A。我对A题做了一些assert,发现诡异地响应了,简直是不可能事件。在瞎改的过程中,我甚至发现将多边形翻转可以多过一些测试点,这就更加不可思议了。最后我索性重写了A,写了个$O(n^4)$的暴力,发现也WA了。

已经是最后20分钟,他们想出了L的一个扫描线+贪心做法,但是不会证,写也来不及了。于是南神决定找K题的规律,把自己猜到的所有结论都试着提交一遍,没有一个得到AC。我和鸟神则对着A题代码检查,并没有找出任何错,一直僵持到最后10分钟。

这时鸟神突然跳出来说:“你把eps从1e-6到1e-15都枚举一遍交交看。”我照做了,但是都WA了,每个eps坚持的时间都不太一样,非常随机。南神说他又发现了K题的一个新规律,让我们把机位给他。而鸟神又说:“不如改成1e-3试试看?这发交了就不管了。”于是改成1e-3交了上去,并换南神上K。我们内心都知道,这只是垂死挣扎,也没想着让它过了。绝望与遗憾地度过了两三分钟,我突然发现刚才那发提交似乎还在Running,它坚持得比以往都要久。我让南神按住刷新,结果居然刷出来一个绿色的√ Accepted。A题294分钟34Y,这就叫“无心插柳”么?我们惊喜地欢呼起来,连观众席上的校领导都知道我们过题了。K题就没有那么好运了,直到比赛结束依然是WA。

出了赛场问了一圈,得知了qls、tls都没有过A的噩耗,很多队伍都坑在了A上。然后又听说了L题我们那个做法可以AC的噩耗,并没有时间去写了。

滚榜的时候亲眼目睹了许多强队的翻车,听到主持人一句句“They are finished.”时,不免有些忧伤。

我们最后6题,并列第20,虽然因为A题罚时原因垫底了。可以说战略制定地比较失败。


World Finals 2017 is finished.

HDU-SupportOrNot has finished.

World Finals 2017爆OJ记的更多相关文章

  1. Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals)爆零记

    昨晚一个瓜皮说今晚有cf,听说是晚间场,我瞅了一眼,娃,VK Cup,上分的好机会,看着比赛时间就有点心酸了,0:35,当时一直在纠结要不要打的问题,当时想着应该不难吧,要不打一下吧,要不还是看看题先 ...

  2. CTSC 2017 滚粗记

    CTSC 2017 滚粗记 结束好几天了一直没写. 明天就要去参加二轮省选了,填一下坑吧. 所以可能很多东西已经忘了 Day -2 [5.5 Fri] 周五晚上是其他学信竞的同学来机房的时间... 也 ...

  3. PKUWC2019爆0记

    PKUWC2019爆0记 访问量该骗的还是要骗. 1.20 坐了一天的高铁到jz了,热的一批 1.21 上午开营仪式 下午day1 打开发现有个地主斗 然后开T1 出题人你™搞笑吧放一道sb都能切的题 ...

  4. HNOI2019 爆零记

    HNOI2019爆零记 day \(-inf\) ~ day \(0\) 开学一周之后才停的课,停课之后就开始每天被包菜.我三月份几乎没有更博,就是因为每天都被虐的自闭了. day \(0\) 本来是 ...

  5. PKUWC 2019&WC 2019爆零记

    PKUWC 2019&WC 2019爆零记 毕竟过了很久了,杂七杂八的东西就不写了,并且除成绩之外的内容不保证其正确性. Day1 T1:看到这道题很舒服啊,枚举top序算合法图的数量,状压D ...

  6. 雅礼集训1-9day爆零记

    雅礼集训1-9day爆零记 先膜一下虐爆我的JEFF巨佬 Day0 我也不知道我要去干嘛,就不想搞文化科 (文化太辣鸡了.jpg) 听李总说可以去看(羡慕)各路大佬谈笑风声,我就报一个名吧,没想到还真 ...

  7. NOIp 0916 爆零记

    题目来自神犇chad 上次爆零是说着玩,这次真的爆零了QAQ 好吧貌似是TYVJ的模拟赛打多了..一直按照TYVJ的格式提交的压缩包.. 然后莫名其妙就AK了hhh 来的时候迟到了半小时,昨晚痛苦的补 ...

  8. [日常] NOIWC 2018爆零记

    开个坑慢慢更(逃 (然而没准会坑掉?) day 0 大概 $8:30$ 就滚去雅礼了qwq 过去的时候发现并没有人...进报到处楼门的时候还被强行拍照围观了一波OwO 然后就领了HZ所有人的提包和狗牌 ...

  9. NOIP 2017 游(划水)记

    Day 0 上午,大概做了一套(大)信(水)心题. 让我想想我题目都是些什么鬼.. T1:大水题.什么sort一下就过了.据说lemon上用map不会被卡常(lemon上评测,程序跑得蜜汁快). T2 ...

随机推荐

  1. C#的值传递与引用传递

    值传递:在使用值传递时,是把变量的值传给函数,函数中对此变量的任何修改都不影响该变量本身的值. 引用传递:使用引用传递时,在函数中对此变量的修改会影响变量的值. 说简单点,值传递,就是我把身份证复印件 ...

  2. TypeScipt学习

    TypeScript具有类型系统,且是JavaScript的超集.它可以编译成普通的JavaScript代码. TypeScript支持任意浏览器,任意环境,任意系统并且是开源的.Ts主要用于解决那些 ...

  3. Top 查看某些或者某个进程(top -p pid)

    https://blog.csdn.net/zhangfn2011/article/details/7488746?utm_source=blogxgwz5

  4. Django Models的数据类型汇总

    https://blog.csdn.net/devil_2009/article/details/41735611 Django Models的数据类型 汇总 AutoField IntegerFie ...

  5. ionic2+中修改minSdkVersion的方法

    具体方法很简单,直接在config.xml中找到下面这一行 <preference name="android-minSdkVersion" value="17&q ...

  6. Codeforces 822E Liar dp + SA (看题解)

    Liar 刚开始感觉只要开个dp[ i ][ j ][ 0 / 1 ]表示处理了s的前 i 个用了 k 段, i 是否是最后一段的最后一个字符 的 t串最长匹配长度, 然后wa24, 就gg了.感觉这 ...

  7. unitest框架--认识与基本使用

    1.import unitest------套路1,必须导入!! 2.#创建测试类--------------------套路2,测试名自取,最好首字母大写,必须继承unitest下的Testcase ...

  8. Nginx的配置与部署研究,Upstream负载均衡模块

    Nginx 的 HttpUpstreamModule 提供对后端(backend)服务器的简单负载均衡.一个最简单的 upstream 写法如下: upstream backend { server ...

  9. Vijos1982 NOIP2015Day2T2 子串 substring 动态规划

    子串 (substring.cpp/c/pas) 题目链接 [问题描述]有两个仅包含小写英文字母的字符串 A 和 B.现在要从字符串 A 中取出 k 个 互不重叠 的非空子串,然后把这 k 个子串按照 ...

  10. c# 调apicontroller

    public string Post(ModelCs mod) { string formData = Newtonsoft.Json.JsonConvert.SerializeObject(mod) ...