20190519 ICPC西安邀请赛游记

所谓游记,其实就是坐了趟公交,毕竟同在西安郊区,想要住酒店,坐飞机或者高铁,都不存在的。。。

我们队名本来应该是qko国际后援团,然而可能是报名时候的失误,最后呈现的是pko国际后援团。。。

我们队是在校赛后组的,当然我和twilight7算是老队友了,当时因为要参加省赛选拔,队伍缺人,就组了校赛表现很好的18级学弟cys。

组队后打过两场训练赛,感觉学弟思维比较严谨,基础也很扎实,反应也很快(偶尔他讲完思路后,老年人我依然跟不上= =)。

缺陷就是我队没有磨合这一说。

学弟是从pascal转的C语言,习惯了什么都自己手写,完全不了解C++,完全不用STL,某些代码风格和习惯我们也很不一样,所以不存在帮忙debug。。。然后就是因为我自己以前就是那种得过且过的训练,性格上也不太愿意要求队友训练什么的,所以和队友在平时训练方面的交流非常少。

5.18

吃过午饭后,坐高校一号线到的西工大,不知道是路的问题还是司机开的有问题,我晕车难受的不行。

到了签到的地方,数据结构王依然坚信他拍照就会打铁。。(去年他和我两队都在西安邀请赛打铁了,A题的惨痛回忆。。。)

领取衣服,学弟觉得和外套不搭,不想换,我也懒得换,索性翘了合照环节跑路了。

下午热身赛,我逢考必拉肚子(其实从湘潭回来之后一周都没缓过来,可能因为当时淋了雨吧。。。

热身赛还是很轻松的,我到机房的时候,twilight7和cys正在讨论A题。(旁边是北航的趣味时光队,我瑟瑟发抖

我随手翻开B,一开始感觉没那么显然,就又看了C,感觉是个表达式求值的模板题,但是我以前没写过,也没有带板子,就懒得自己模拟了。

继续回到B,思路历程:

每个数都可以通过开根号和阶乘变成1或者0,那么多于24堆的时候一定可以;

然后突然开始考虑单个数字,只有阶乘可能使单个整数变大,然后发现0、1不可能变得大于1,2也不可能变得大于2,然后猜测大于等于3都可以;

然后验证了一下,发现确实可以,那么只要sum(max(1,ai))>=3即可;

上机,WA;

之后cys发现1,1也可以,改了就过了。

然后我去看A,其实之前cys有和我说A题应该是个很简单的计算几何,稍微写过计算几何就能过,但是我对计算几何有点抗拒,而且觉得热身赛,就先写了B。

看了A之后发现就是求四边形面积。。。用了kuangbin的算多边形面积的计算几何板子,也没多少行就过了。

C题本来cys准备写,最后放弃了。

结束后了解到绝大多数队直接python eval,也有人很熟练的自己模拟完了,学不来学不来。

5.19

经过昨天晕车的惨痛教训,我们决定打车过去。

比赛开始前几分钟发了题目,发的过程啥也没说,附件有些队就直接拆了,不过有些队发现大部分队都没拆就又装回去了。我们当然是很老实的没有拆啦,甚至没有敲头文件,隔壁北航大佬也是。

离比赛开始大概还有一分多钟,发现有些队已经开始看题写题了??然后我就问了一个路过的志愿者可以拆题目了吗,志愿者说已经可以了。。。

然后开始看题,我从后往前,cys从前往后,twilight7中间。

学弟说A签到,他就上机写了,几分钟后过了。

我瞄了一眼M,觉得这个类型和数据范围不像签到,所以看L,推了一会儿L还没推出什么结论,然后发现 几何旋律 已经拿了M的一血了,于是我去看M,第一眼觉得是二分,很显然的单调性,但是觉得最短路没法check,这个时候听到隔壁说bfs。。。

我有点难受,当时觉得不是自己想出来的,不愿意写,可能有点装,但确实是那一刻真实想法。。。然后就叫了cys,给他讲了M题意和二分,问他怎么check,他说bfs。

我觉得是自己队友想出来的,就上机了,一发过了。

我写的时候twilight7和cys在讨论L,并已经有了大概的想法,然后twilight7写了个暴力验证了一下,发现是对的,然后我就按他们的结论写了一遍,也一发过了。

这之间cys和我说了一下C,虽然结论好像挺显然的,就像去年ecfinal的F,但那个时候过C的时候并不多,我更倾向于搞D。

我把kuangbin板子给cys让他试试写C,但是他完全接受不了这个代码风格和一些用法,只好作罢。

结果我们卡在D上了,当时因为发现了/100,是在往dp的方向想,如果没有限制就直接01背包,有这个二分图限制的时候我没想到怎么处理,cys好像一直在想二分图怎么做,中间也问过我们会不会分组背包(我:那是啥?twilight7:不知道。cys:...)

于是我转向C,毕竟感觉只要敲对板子就能过。但是由于我确实就没怎么写过计算几何,速度实在太慢,似乎敲了快有一个小时才敲完。。。然后用余弦定理算圆弧的时候距离忘记平方了,过不了第二个样例,手算样例之后发现也和样例对不上,然后去看了公告栏,了解到样例错了,再调了一会儿代码,过了样例就交了,然后也过了。

我敲C的时候,两位队友也读了剩下的题,有些没有想法,E题twilight7说树剖+线段树可以做,不过他可能要很久,有其他题做时他不想写这个。

这个时候我觉得还是要想D,想了十几分钟,突然想到二分图中的点一定是一人取一侧,此前想的居然以为可以有人取两侧的部分,总体上来说算是因为对二分图不够熟悉吧。。。那么就可以把所有联通的二分图部分转换为两个点,只有一个点的也可以转换为ai和0,这样01背包中的取或不取就变成了两个点二选一,依然可以按01背包来做。

我们讨论完做法后,cys说他写吧,我就去推B,但是我数论确实有点弱,用莫比乌斯反演推的,推出来后面一坨积性函数不会化成可以用杜教筛的形式,GG。

一段时间后cys写完了,发现莫名段错误。发现linux使用cb段错误的时候输出调试并不是很管用,于是我们决定打印代码debug,我先重写一发。

于是写了大概十几分钟,测了测样例和一些小数据,然后我们交上去,也是一发过,不过这时候只剩一小时左右了。(后面学弟发现他bfs时标记不小心写成visit[i]=0,导致的死循环= =)

我觉得J或许比E好写,因为过的更多,决定让twilight7想J,我没太理解题意,我们只想到异或是可逆的,他好像头脑风暴了一通点分治、树dp之类的。。。

想不出来J,twilight7去写E,这时候我和cys进入挂机模式,帮不上忙,离结束差不多半小时,听到对面武汉大学的队伍才发现C题第二个样例错了。。。有点惨

事实上twilight7的E想简单了一点,他是像普通的加减法一样的更新与和或操作,WA了。但是毕竟后来时间紧迫,也没办法了。

赛后听说几何旋律队八题,想着他们刚在湘潭拿了季军杯,这次应该又能捧杯了,真的tql。滚榜环节挺刺激的,西交WF队太强了啊,九题夺冠,隔壁的北航大佬队也很强,八题亚军,几何旋律队八题,可惜因为罚时第四,没能捧杯。

最后我们队五题,虽然后两题出的很慢,但是因为都是一发过,加上前三题挺快的,因此还是苟到了rank60,拿到了银。人生第一块ICPC奖牌,很心酸啊,对比去年西安邀请赛,虽然是因为题目问题才打了铁,但是确实太菜了,感觉不被坑也就是铜牌靠后。。。

赛后总结发现,强队不够多的省赛或者邀请赛,手稳一点,反应快一点,似乎签完到就银了。。。

和队友聊天时说到,高中不够努力,高考考砸了我都没觉得很后悔,但是大一大二训练不够努力,我现在是真的后悔。。。(是真的喜欢和享受这个比赛呀QAQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值