竞赛思想

个人的一些,不太成熟的思想。

比赛有很多策略,好的策略事半功倍,可以减少不必要的时间损失,或者为题目争取更少的罚时。

模拟样例(危险)

这是一种非常危险的方法,用好了可以帮助做题,但是一旦没想出来,它的耗时是非常严重的,一般情况下,除非实在是做不出来了,或则实在没别的题做了,不然不能使用此法。

本身模拟非常耗时,而且容易降低人的紧迫感。紧迫感有利有弊,但是一旦模拟就容易懈怠,从而降低开局的效率。特别是在 ACM 这种,时间少任务多的比赛中,模拟就像是一种赌博。赌对了,这可能就是跨越牌子的一题;赌错了,这次比赛大概也就炸了。一般能不模拟就不模拟。

而且计算机竞赛的思想一般是全局的、通用的、巧妙的,仅仅靠着局部的一角,很容易去局限我们的思想,从而减少了灵活思想的产出(模拟时人的精力会放在数值上,而非思路上)。

因此,除非不得已,或者题目整体已经做出,找 hack 时,不要去使用这种方式。

整体思考

这是与上面模拟的思想相背的,也是算法竞赛最重要的思想。一般事物分为整体和细微两种状态,细微就像是模拟样例那样,可以找出一些问题,在代码整体思想正确的时候,找 hack 比较好用;而整体思考就是寻求解法,通过整体思考题目里面的信息,不需要把变量带入具体是数值,而是思考有什么联系,什么更本质,更深层的联系,然后做题解决问题。

这种发现问题本质实际上是很难的,或者说,第一次认识到是很难的,毕竟人无法想象认知之外的东西,我们也很难想到从来没有使用过的解法,一般需要通过刷题来积累经验和思想,后续通过经验和思想的结合就可以更容易的解出题来。

当然这么说也是很空的,但是也只能这样,有些东西是写不出,也说不出的,只要你记得这句话,并试着使用的时候,可能就会有所理解。

猜测思路

这个想法仅限于竞赛,因为现实问题是不一定有解的,也很难有所谓的 “找”。

一个题的考法是有偏向的,通过了解题目,可以推测一个题的大体方向,一般比较复杂的问题,多半为 DP,和点牵扯的就容易搞到图之类的。我们不一定能完全推测出做法,但是可以尝试大概的方向,然后多去想想。

虽然算法竞赛的题目非常自由,但是本质上,它是题目,即使再怎么灵活,也会有一定规律。引用我高中做题的思想,一个题出出来就是给人做的,他不会搞的无解,只要能看见,就一定有解法。我们做题的时候会有胆怯心理,怕做不出来,但是,这个题本身是有解的,明白这点之后,我们的目标就不是创造出解法,而是找出出题人的解法了,这样想似乎也就不难了。(这里需要插一句,这个想法本身是为了竞赛的,而不是为了现实问题,因为这个问题一定有解,而且是确定的解,因此我们只需要找到即可;而现实问题不一定有解,因此我们需要创造这两个的心态还是有所不同的,而算法本身是为了解决现实问题,因此,练习还是应当多以创造为主,而比赛为了成绩应当尽量去找,虽说本质都是创造,但是心态是完全不同的,提升的点也是不同的。本身 “找” 这做法就有限制思维的风险,“万一是思维题呢”,因此平时还是多以创造为主吧)。

既然这个题有解,我们就尽量去找相关的办法即可,咬死方向,只要不是思维题,一般都能一点点找到解法的。(思维题是很头疼的一类问题,只能靠思维,get 到某一个点才能做出来,这种没有算法作为依托,是很难 “找” 出来的)

但是思维题也不代表一点方法也没有,只是这种方法很隐性,这就是思想。

思维和思想

方法、证明、思想。求其解,知其原因,究其思维之本。怎么做(方法),为什么是对的(证明),怎样才能想到这样做(思想)。我高中仅仅做到了证明,缺少了思想的总结,而这些思维题就是靠这些思想做出来的。学习一个东西,就需要做到这三点,或者,就这句话,学习本质,提取思想。

这里点一点,高考的新定义题,很多人都觉得棘手,因为新定义,你根本没法通过学习知识(方法,或者结论)来解决这种题,而我在 OI 学习的加持后,从中感到了一丝 OI 的感觉。本质上,这种新定义和 OI 的思维题是一样的,因为 OI 的情景都是完全新的,而思维题,不会给你什么通用解法,这其实和新定义的完全从新一样。最开始相当于都是空白,这种情况下,就是思想发力的时候。如果你专门做过一些新定义的话,你也能从中感到一些相同之处,相同的不是做法,而是思想,是那一丝的思想。如果可以总结下来的话,这将会实打实的提升大脑思维,可惜我现在都没做到那样,但那是必须走的一条路。

我们做的每一道题都有其思想,都值得去研究一下,究其思维之本。在竞赛中,思维比方法,更重要。

posted @ 2026-04-21 22:15  blind5883  阅读(10)  评论(0)    收藏  举报