zoukankan      html  css  js  c++  java
  • 2017年11月19日ACM-ICPC (北京)总结

    最近要都在补作业,终于有空写下总结。。

    抱着打铜的心理来了北京赛区,然后真的打了个铜。
    热身赛:有了上次沈阳的经验,测完后还有大把时间可以做题,不过没带模版,只过了一道签到题。自己手写了个网络流死活卡不过去,后来发现正解也是差不多那样,估计是我写歪了。
    正赛:由于自己英语不好,开局就调下IDE什么的,队友看题。武强看完做了道签到E,炜铭过来和我说F题意,是个蛇形填充题。我想了一下感觉细节很多,就决定交给擅长写模拟的武强。之后炜铭又告诉我一题C题,不过一开始没讲样例我理解错了题意,浪费了一点时间。看懂题意后我就开始想那题了,这是我这场比赛中犯得最大的错误了。我原本以为直接莫队+并查集删点可以搞定,调了好久后才发现莫队删除部分不止删点那么简单,直接放弃了。中途武强卡题卡得严重,我又重新去推了一波F的规律,然后想到个容易点的写法。但是在码的时候莫名卡住,然后炜铭就说直接dfs,就让他写了。写完wa了一发,然后发现特判时没判对交上去A了,此时我们已经是在铁牌区。武强之后就肝最后一题,由于我当时还在卡C题,所以我们每人都是上去敲一会就换人,效率也不是很高。最后我放弃了C题,和他们一起做最后一题(虽然我什么都没做),在比赛结束前不久过掉了,66名打了铜。

    总结一下组队以来的想法:
    1、不要太依赖队友,不然队友GG就一起GG。平时都是队友负责dp,模拟什么的,我也没去补这方面的题,所以这方面的水平越来越弱。平时就应该补掉队友做的题。
    2、我太专注于一道题上,尤其是数据结构的题。而且数据结构的题经常要码到200行左右,调试什么极其麻烦。而且做题之前很多细节没想清楚,码的时候经常调不出样例。我经常回去做一些没什么人做的题,这个习惯可能和我英语不好有关,英语不好的我不怎么想看题,所以看懂一题就死磕。
    3、武强有点霸道,他做的题基本不给别人插手,还经常抢各种题做,所以他一卡题就会翻车。而且由于代码风格比较鬼畜,几乎无法帮他debug。最坑爹的还是他码的时候不让我们打扰他,然后我们码的时候他经常在旁边骚扰= =。但是他综合实力还是最强的,所以我们经常选择相信他。 

    4、炜铭对字符串的执着大概和我对数据结构的执着差不多,码力比我强,手速也飞快,还有女朋友,还经常说要和女朋友出去玩。炜铭的话最麻烦的就是有时候跟他讲思路的时候很难讲明白,所以不是很好沟通。而且有时候证明一个算法是错的时候老是要我举反例,比较头疼。
    5、关于炜铭在他的总结上提到的组队赛用三台电脑打,其实我觉得用一台会好点,当然前提是要回去补题。一台电脑可以练习如何安排好时间,虽然我们这点一直没搞定。用一台电脑还可以帮队友debug,提前适应正赛的环境。

    打完这场icpc后我决定退役了,从此不再半夜三更边想题边掉头发了。

    总结一下我的acm生涯,我发现我的学习的姿势一直都不太对,很多算法都是边做题边学的。由于大一的时候比较懒,没怎么补题,所以有些比较基础的算法都是到后面才学的。到了大二看着周围的同学都变成了大佬于是下定决心好好学,但是学的方向不太对,学了些偏后期且不经常出的算法。结局是很明显的--平时训练的题基本没有我学的那些,没有经常性的练习,我会的那些“冷门”算法也熟练不起来,到了真正用的时候就不会了。就比如说莫队,我学完后一年才做到莫队的题,还是原题,我都调试了好久。大二打完省赛后,我才去补没学过的状压dp,容斥这些。然后又莫名学起了主席树,从此入了数据结构这个大坑。说来可笑,当时的我会写树剖却不会写线段树,所以我又花了一段时间钻研了线段树。在某天晚上顿悟了主席树的原理后,我对数据结构的热爱一发而不可收,写个可持久化并查集写到半夜四点,一遍又一遍地调树套树的内存,在明白了CDQ和整体二分的美妙以及分块,莫队,倍增的暴力美学后,我认识到这才是我最喜欢的算法。然后我发现,不止是数据结构,几乎所有的算法都是要认真地去研究其原理,最好能做到自己手写。以前的我都是什么都套模版,抄模版,而现在我很少会去用模版了,不是因为不需要,而是为了巩固知识。很多题其实只是一些经典算法的变形,如果连算法原理都不知道是很难去举一反三的。记得有一次写了个spfa判负环,两个队友都不认为spfa可以用栈写,其实明白了spfa的原理就知道,队列也好,栈也好,不过是把需要更新的状态存起来而已。关是知道算法是怎么用是远远不够的,要知其然而知其所以然。

    退役后还是决定继续打cf,一边练习英语。
    感谢大一到现在的队友们的帮助
    感谢大佬们一次次的帮助解题

    感谢老师和学校提供了这个平台

    感谢自己选了acm

    第一次省赛组队

    沈阳

     

    北京

  • 相关阅读:
    6. Flask请求和响应
    5. Flask模板
    FW:Software Testing
    What is the difference between modified duration, effective duration and duration?
    How to push master to QA branch in GIT
    FTPS Firewall
    Query performance optimization of Vertica
    (Forward)5 Public Speaking Tips That'll Prepare You for Any Interview
    (转)The remote certificate is invalid according to the validation procedure
    Change
  • 原文地址:https://www.cnblogs.com/scaugsh/p/7893165.html
Copyright © 2011-2022 走看看