1、比赛前一天晚上请准备好身份证、准考证, 笔, 事先查好去往考场的路线;
2、进入考场后, 一切听从监考老师安排, 检查电脑是否有问题, 试题打开是否有问题, 保存文件路径是否有问题, 有问题一定举手告知监考老师;
3、打开编译器后, 调整到自己习惯的字体大小等, 尤其注意区分容易混淆的字体: 数字 1、英文大写字母 I、英文大写字母 L、英文小写字母 l;
4、请将题目通读完以后, 再开始深入思考你认为最容易的一道题: 即使题 目再容易,也不要着急写代码,请先明确自己每一步要干什么后,再开始写,不要走一步想一步, 轻敌会是你最大的错误;
5、使用万能库的同学, 注意 #include<bits/stdc++.h>
一定不能写错
6、定义变量时, 禁止使用的变量名:
time,dfs,next,search,index,find,pwo(幂函数),
min,max,y1,x0,link,map,pipe,ws;
最大值, 最小值, 求和, 乘积等变量一定要记住初始化。 数组最好定义到全局, 一定禁止定义到递归函数中, 以免造成栈溢出。
7、每题都要求使用文件输入输出,请一定将题目要求看清楚,区分大小写:
int main(){
freopen("filename.in","r",stdin); //filename每道题的英文名字
freopen("filename.out","w",stdout);
//……
fclose(stdin)
fclose(stdout)
return 0;
8 、 输 入 时 , 注 意 int 类 建 议 使 用 scanf , 字 符 串 string 用 cin ( getline(cin,s) ), 格式化输入格式匹配;
9、输出时, 要按照题目要求输出, 特别注意, 字母大小写, 格式化输出类型匹配; 比如 long long 类型 ,是否使用了“ %lld ”
10、草稿纸、草稿纸、草稿纸!!!当你思路混乱时, 草稿纸会是你最好的 帮手;过程量, 动态规划转移方程, 边界的加一减一问题, 请一定在纸上举例, 编写程序时参照纸上的写;
11、如果思考较长时间,仍一头雾水, 没有可以实现的算法, 请降低数据范围再考虑,可以暴力的就暴力;
12、如果你发现你旁边的人写得很快,请你放心,他的算法十有八九都是错的, 不要被别人带走节奏;
13、编写完程序后,试着跑一次样例,如果有错,最好阅读代码静态查错, 有时变量存在重复调用的问题使用调试很难看出来。静态查错主要注意以下方面:
- 是否写上了 using namespace std;
- 数组开得是否够大?
- 变量类型是否正确?变量初始化是否正确?
- memset 时, 所填的 size of (XX)的 XX 是不是匹配?大小是不是正确
- 外层循环与内层循环的 i,j 是不是混用了
- 循环之前, i、j 是否定义了?循环中是否更改了循环变量
- 输入数据都输入了吗?
- 这个程序是在执行你想让它执行的步骤吗?
14、样例通过后,不要认为万事大吉,因为样例并不能覆盖所有的情况,请自己设计几组数据, 再测试。特别是特殊情况, 数据的边界
15、源代码务必存放在要求路径下,例如: D:\csp 。(注意:csp 下不要建立子文件夹) 就在此目录下进行代码编写与调试
16、为了万无一失, 请你必须用 return 0 结束你的程序,在noi linux请一定要加上。
17、最后 5~15 分钟时候,最好不要再改动你的程序。这时应当检查程序:
- 程序中的注释是否去掉。
- 文件名是否正确。
- 输入输出语句是否正确, 输入输出文件名是否正确。
- 保存位置是否正确。
18、文件的错误全名是“ pocket.cpp.cpp”,如果在 CSP 二轮写成了这样,百分百就爆零了 。 正确应该命名为“ pocket.cpp ”
19、请记住, CSP 比赛不怕暴力,怕瞎算,实在不行期待暴力出奇迹吧!!!