CSP初赛技巧整理

初赛练习总结
By HNFMS G2021 信息组

选择题:
1、计算机常识性的东西没什么好说的,多读多背
2、数学的计算题先不要想着去枚举,先看有没有能用得上组合数学或者其它数学定理的地方(一般必考),当然算完了如果有时间可以用枚举去验算,注意要保证正确性
3、数据结构类的题目一定注意审题,如比较常见的“非联通图”“有向图(无向图)”等等,然后要注意这些数据结构的性质

对于“阅读理解”和“完形填空”
考试目的:了解程序用途,变量名含义,跟踪变量数值的变化
自顶向下的设计->阅读理解:严谨性
自底向上的构建->完形填空:开放性(但是改成选择题后还是不能太过开放)
阅读程序写结果是完全自底向上构建的过程:
1、纯模拟
2、递归找规律(构建递归树)
3、构建出程序的含义
程序填空题是自顶向下设计和自底向上阅读的会和过程(三种空要填):
1、定义的空
2、计算的空
3、条件的空

前瞻 :
1、 看题目前有没有提示语(就是告诉你这个程序是干什么的东西);
如果有,一定要先把提示语钻研透了;
没有就得靠你自己去get了,必要的时候可以化身为“懂王”。
但是切忌先入为主,不然一去不返,因为人的第一印象影响是很大的。
2、 保持好的心态,不要畏难,要迎难而上。
空的难度不一定按顺序排列,有些空确实毒瘤。
所以不会的就跳过,先把一些简单的空都填上,一定不要因为有些空填不出来就慌!!!
心态崩了考试也崩了。
3、细心
不要擅自改代码
比大小时小心mod
注意观察变量名
快速发现模板代码

解答五步骤(可以更具自己情况转换)
步骤一 (看程序):
大致浏览一遍,不清楚可以跳过。(完善程序先看要求做什么)
先从主函数开始看程序,梳理脉络,再按照逻辑次序分析其他函数。
<1> 由函数名确定是否有学过的算法(一定要弄清楚所传参数的具体指向,有全局观念——了解各数组的含义是什么,如果可以的话)
<2> 然后就是仔细看程序了,通过语句来了解变量的含义,注意一下特判情况,理清嵌套函数的递归方式(可以试着归类变量名);
步骤二 (看类别):
毫无思路时可以手模一遍,尤其是小数据时(递推&递归题目,可以用列表法直观地看数据)。
如果是构造方案的题,给出了样例答案可以借助它。
如果是分类讨论的题,大概率有重复部分,可以借鉴。也就是通俗的“联系上下文”。
步骤三 (看选项):
分析选项之间的共通性(在阅读程序题中的后两道单选题往往是给出数据求答案之类的,或者分析时间复杂度)
步骤四 (看数据):
注意数据范围 注意数据特例 注意输出和输入时的处理
步骤五 (看答案):
即检查,切记切记不要空题!!
事一 : 给自己没把握的完善程序题造样例,有时间多弄几个
事二 : 把没填的空尽快填上
事三 : 再次思考那些难,但有些思路的题目 。 不要死磕在某些毒瘤上(真的是拼概率)
事四 : 确认自己选的是自己想选的答案(不要出现想A选B的情况……)

玄学:
三长一短选最短,三短一长选最长
两长两短就选B,同长同短就选A
长短不一选择D,参差不齐C无敌

posted @ 2021-10-10 21:05  缥灵  阅读(717)  评论(0)    收藏  举报