*复赛前提醒
根据最近两个月的练习,一些我易错的地方加以记录:
关于空间,时间:
1、数组大小一定要开够,尤其是开边的大小,有时要*2,
2、空间一定要算好,不能MLE
关于long long :
1、如果不能确定大小是否超过 long long ,请尽量开 long long 为好,以及 printf(“%lld”)
2、int乘int可能会爆int,要在前面加上(long long),而这样的速度是比long long运算要快的
关于预处理:
1、预处理要充足,不能为了节省时间就根据题目而定
2、并不需要预处理2的几次方,位运算是个很好的方法
3、预处理数组要开到N+10,否则值会溢出占领别人的地盘
关于打题过程:
1、老老实实打会做的算法,会用的STL,不能图方便(通往奥格瑞玛的道路)
2、题目信息一定要看清,否则被题意杀可不好
3、要清晰的明白自己的代码在打什么,或者在纸上列一下过程
关于调试:
1、如果程序出现了问题,调试时请一定要分模块调试,不要从头跟到尾看到底
2、打完一段就调试一段
3、每想到一种可能是正解的算法,不要急于下手,确保其算法的正确性,否则程序都打完了才发现这是错的,浪费了时间
关于考场策略:
1、考场上一定要控制好时间,不能限于一道题太长时间(第一题尽量不能挂,时间控制在45分钟)
2、文件名,文件输入输出,编译一定要通过,建文件夹等绝对要检查3次
3、就算是再简单的题也要保证它的正确性
4、一定不要相信自己的一遍过样例
e l s e:
1、char数组不能直接进行比较 eg:(s1==s2)
2、位运算优先级很低,一定要多加括号
------------------------------------------------------------------------------------------------------------------
算法提醒:
1、要求最小值,最大值的时候,想想有没有东西是单调的,可以用来二分
2、DP是NOIP必考的考点,如考到需要较快的想到
3、在DP的时候,如果发现爆空间,要懂得滚动数组
4、搜索,贪心等一些常用算法要想到
5、树状数组是个好东西,一定要灵活掌握
6、有关树上的图论,lca,树上差分,以及桶的储存都是很常用的方法
7、记住一些常用的卡常技巧