您的位置:首页 > 其它

第一届校赛总结NYIST(专业组)

2013-04-24 10:38 183 查看
校赛总结

对于昨天校赛,我感觉准备的比较匆忙,在比赛的前一天晚上还在装系统,装打印机,修改一些关于比赛的程序(当然我也在帮忙,可见咱acm的人数还是少啊),甚至在比赛前半小时,有电脑里面还没有比赛必用的软件,不得已将比赛延时半小时了。我认为造成比赛延时的根本问题在于准备过程没有按照相关计划(或者压根没有指定相关计划)执行,导致了很多原本早应该完成的工作拖到后面去做,直到比赛前一个小时。

在比赛开始前我们队早早的来了,带好了辞典,稿纸,三支笔还有几份模板。题目发下来了也是按照原先的规矩,xiaod读前三题,GreyAnts读中三题,我读后三题进行的,看上去一切都很顺利,第一题发现是水题毫不犹豫的提交(恰好全场第一个提交),期间我看的题目中也有一个水题,排完序后就好了,读完后立马就跟xiaod说了这题也交了。接着我这里剩下一个摘枇杷和一个买东西的问题,摘枇杷那个看上去很熟悉,就跟GreyAnts商量,开始的时候提出了一个思路,不过后来准备让xiaod写的时候及时发现是错的了(这里浪费了很多时间),然后就跟xiaod说了题意,他说用二分可以做,于是我就开始想剩下那个买东西的题目了,这个题目很显然是一个依赖背包的问题(赛后说原本考点是最短路),我练习了两星期的dp,这题目不能放过,于是我说应该能做,便开始思考状态和转移方程,不到十分钟,伪代码就出来了,xiaod看了之后让我写,GreyAnts在边上看(因为我一老写错.囧),说快也不快,对着伪代码写程序一下子就完成了,测样例也能直接通过,然后为了保险起见,再测试了一些边界数据,发现也能过,于是就提交了,等了一会,好不容易等来一个返回结果,居然TLE了,果断打印代码,我跟GreyAnts一块检查排错,由于用递归写的,不太会算复杂度,然后考虑是不是成环导致了死循环,于是修改了一下这个bug之后再测试再提交,还是TLE,这会有点小忧伤了,我决定说说我的思路让xiaod看我代码,他很快指出有个地方不应该取消标记,这样会导致很多重复的路径再次计算(还是代码写得多有经验啊,orz),于是改过之后再提交,终于过了。

这个时候已经出6题了,我们的排在第二名,比赛还有两个小时。现在还剩下三个难啃的题目,我们一块分析了一下,两个中文题一个英文题目,由于英文的那个是计算几何,三个都不会就放了,还两个看上去是图论好像是求什么最小割(就是把一个图去掉最少的边分成几部分),我模拟了一下其中善良的国王那题,我感觉用树形dp能做,于是就让我想这个,他们再想另一个谍战的,终于我写出了伪代码,不过我发现有一个步骤比较难实现,耽搁了好久,就是感觉遍历子状态的时候好复杂,于是跟队友一块讨论了,还是无果,这个时候他们决定用贪心写写那个谍战的,这时候离比赛结束还有仅一个小时了,当写完之后发现思路不对,于是放了放,准备最后没有办法的话再试探性的提交。

比赛进行到最后二十分钟了,我发现我慢慢的把那个善良的国王(赛后讲解了其实就是树形dp,而且是很简单的树形dp,只是我想复杂了)越想越复杂了,貌似有点不对了,应该没有那么难,搞得我都有点想放弃了,我开始怀疑是不是方法用错了或者压根就不是dp总之很不坚定了,最后就吃点东西也没有想什么了,直到最后三分钟的时候,xiaod准备提交谍战了,居然返回一个yes那时候真是有点惊讶(估计大家在心里感慨数据是有多水),最后一个气球也送过来了,比赛也结束了。

比赛中的小插曲:第一题本来是三分钟的时候提交的,但是服务器出了点问题,我们又没有收到通知需要再次提交,直到我们前去询问为什么不给改判第一题的时候才知道上传的cpp文件丢失了(算CE),要再次提交,这样罚时增加了140+20;据说G题数据很大,后来因为担心卡死服务器就把他改小了,于是变成了水题。

A悟空的难题(排序)

B 善良的国王(树形dp)

C Sinking Ship(模拟)

D小明的求助 (模拟)

E谍战(最小割最大流)

F Trash Removal (求凸包的宽度)

G 最小K个数的和(据说数据很大,后来改了,排序)

H 贪婪的商店(树形dp,也有说这个方法叫搜索,其实都一样,或者求最短路)

I 摘枇杷(二分)

-- 2013-04-22
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: