多做难题

如果你去问那些牛人“这道题你是怎么想到要用XXX方法的”,我估计大部分人都说不出个所以然来。其实很多情况下都是纯凭直觉考虑到的数个思维方向,这种直觉是需要大量的练习来得到的,没有那么多“为什么能想到”,类似于Roba口中的“条件反射题”一样。所以要多做题。

不过这里的“多”不是指数量多,而是质量多。所谓的难题也并不是指要做那种难到天顶的题,而是适合自己的难题。如果一道题能够让你经过数个小时甚至一天的冥思苦想,最后终于AC,我认为这样的题才是最好的。当然这是你要有一些相关基础的前提下才能做的,不要一上来就走极端。

事实上,我认为只有对思维进行这种接近极限的运转,才能最大限度的加深对相关知识的理解能力,在众多的idea中一一排除,最后找到正确的那条路,也能让你每个方法的本质有一些更深的理解。而且这种方法过题,得到的成就感显然不是刷十几个水题能比得了的。

至于这样的题该如何去找,看某些有难度分级的题单是一个不错的方法,TC, CF这种题目分级相当明确的OJ也是不错的选择,或者干脆去看一道题的AC数和AC率。这个可能需要做很久才能把握住哪些题适合自己,但是当有了一些基础之后,至少要时刻提醒自己,多做有质量的题,少做水题。

不要做太多比赛

因为绝大多数的比赛都不是面向初学者的,所以我觉得初学者做比赛有害无益。就算是做比赛,也应该明白做比赛的目的是要警告自己还相当弱,激励以后继续努力,而不是要检验这段时间的学习成果一类。

由于刚入门的人知识方面还有相当多的空白,想提高是一件非常容易的事情,有大量的资源可供使用,自己线下练习完全足够,我看不出比赛会有什么特殊的神奇效果。在我看来,比赛主要锻炼和提高的是自己知识和技巧的运用能力,或者你可以看成是“招式”。比如我07年做了一年的TC之后总结了一下,发现我的知识水平似乎没有显著的提高,倒是思维的活跃度、临场发挥能力有了显著的提升,对实际上没有超出自己知识水平的问题,AC率显著上升。但是想达到这个效果,首先要有足够的根底,然后才是去考虑该如何高效的运用你的内功。只靠比赛是没办法无中生有的。而且比赛连续失利很容易打击一个人的热情,这对初学者来说是很致命的。所以初学者对一般的比赛,建议还是少碰为妙

[转]acm忠告的更多相关文章

  1. SCNU ACM 2016新生赛决赛 解题报告

    新生初赛题目.解题思路.参考代码一览 A. 拒绝虐狗 Problem Description CZJ 去排队打饭的时候看到前面有几对情侣秀恩爱,作为单身狗的 CZJ 表示很难受. 现在给出一个字符串代 ...

  2. SCNU ACM 2016新生赛初赛 解题报告

    新生初赛题目.解题思路.参考代码一览 1001. 无聊的日常 Problem Description 两位小朋友小A和小B无聊时玩了个游戏,在限定时间内说出一排数字,那边说出的数大就赢,你的工作是帮他 ...

  3. acm结束了

    最后一场比赛打完了.之前为了记录一些题目,开了这个博客,现在结束了acm,这个博客之后也不再更新了. 大家继续加油!

  4. 关于ACM的总结

    看了不少大神的退役帖,今天终于要本弱装一波逼祭奠一下我关于ACM的回忆. 从大二上开始接触到大三下结束,接近两年的时间,对于大神们来说两年的确算不上时间,然而对于本弱来说就是大学的一半时光.大一的懵懂 ...

  5. 第一届山东省ACM——Phone Number(java)

    Description We know that if a phone number A is another phone number B’s prefix, B is not able to be ...

  6. 第一届山东省ACM——Balloons(java)

    Description Both Saya and Kudo like balloons. One day, they heard that in the central park, there wi ...

  7. ACM之鸡血篇

    一匹黑马的诞生 故事还要从南京现场赛讲起,话说这次现场赛,各路ACM英雄豪杰齐聚南京,为争取亚洲总舵南京分舵舵主之职位,都使出了看 家本领,其中有最有实力的有京城两大帮清华帮,北大帮,南郡三大派上交派 ...

  8. 【codeforces 415D】Mashmokh and ACM(普通dp)

    [codeforces 415D]Mashmokh and ACM 题意:美丽数列定义:对于数列中的每一个i都满足:arr[i+1]%arr[i]==0 输入n,k(1<=n,k<=200 ...

  9. acm 1002 算法设计

    最近突然想往算法方向走走,做了做航电acm的几道题 二话不说,开始 航电acm 1002 题主要是处理长数据的问题,算法原理比较简单,就是用字符数组代替int,因为int太短需要处理的数据较长 下面是 ...

随机推荐

  1. android 读取根目录下的文件或文件夹

    @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setC ...

  2. 【转】Android编程判断手机or平板

    转载自:http://www.cnblogs.com/sunzn/p/3663363.html /** * 判断当前设备是手机还是平板,代码来自 Google I/O App for Android ...

  3. 磁盘、分区及Linux文件系统 [Disk, Partition, Linux File System]

    1.磁盘基础知识 1.1 物理结构 硬盘的物理结构一般由磁头与碟片.电动机.主控芯片与排线等部件组成:当主电动机带动碟片旋转时,副电动机带动一组(磁头)到相对应的碟片上并确定读取正面还是反面的碟面,磁 ...

  4. dp88dp6最靠谱的网络赚钱方法

    (本文非原创,转载自http://mt.sohu.com/20160131/n436463696.shtml) 1.卖产品 最靠谱的当然是自己卖产品,可以先去淘宝.阿里巴巴.百度找到一款你认为有前景的 ...

  5. SVN报Previous operation has not finished; run 'cleanup' if it was interrupted错误的解决方法

    做着项目突然SVN报Previous operation has not finished; run 'cleanup' if it was interrupted,进度又要继续,烦.百度一下发现很多 ...

  6. system generator 卷积编码器快速设计

    卷积码 卷积码是一种特殊的编码方式,不仅与当前的输入有关,还与之前的输入有关.可以用一个多项式来表示一个卷积编码,多项式表示有多少个移位寄存器以及他们怎么与模2加法器相连.比如,下图中的无反馈的卷积编 ...

  7. ZBrush中怎样对遮罩进行反选

    通过对ZBrush的学习,我们知道了如何手动创建遮罩,手动创建遮罩相对来说是最简单有效的方法,在某些特定的使用场合会起到事半功倍的效果.创建遮罩我们可以结合Ctrl键在物体保持编辑的状态下来执行,您可 ...

  8. 原生的强大DOM选择器querySelector

    在传统的 JavaScript 开发中,查找 DOM 往往是开发人员遇到的第一个头疼的问题,原生的 JavaScript 所提供的 DOM 选择方法并不多,仅仅局限于通过 tag, name, id ...

  9. MarshalAs属性指示如何在托管代码和非托管代码之间封送数据。

    http://blog.csdn.net/tianyu0910/article/details/6260755 http://blog.sina.com.cn/s/blog_4e4ee8ed0100e ...

  10. android studio 应用小知识总结

    1.在复制一个工程文件后 想修改包名,则在Android下的java中的 Android test中,鼠标右键Refactor->rename->Rename_package->Do ...