1、程序可以采用DEV C++或VC++作为编译器。评测系统所使用编译器为GCC/G++ 4.5.0,某些在VC6.0中可以编译通过的写法实际上并不符合标准,此时提交到在线测评系统时可能会得到Compile Error。推荐使用DevCpp开发环境。编程时应该采用标准ANSI C/C++语法,不要使用VC的一些不标准的写法。
2、如果写C语言程序,一定要保存为扩展名为.c再编译,不要保存扩展名.cpp再编译。不要使用只能在C++中才能使用的语法,如:用//表示注释,使用struct mystruct时简写为mystruct等。
3、如果使用C++,在源程序中的开始处,使用文件包含命令的写法如下:
#include
using namespace std;
4、在main()函数前必须使用int返回类型,最后返回0,不要以void作为返回类型。否则可能得到Runtime Error。样例:
int main() {
//your code block
return 0;
}
5、避免使用一些可能是保留字的单词做变量名,如count,建议应成mycount或count1之类。
6、当程序需要处理多组数据时,不必把结果全部存储起来在最后一起输出,读入一组数据,计算完成后直接输出这组数据的结果即可(见最后样例题目及程序)
7、较大的数组不宜开在局部变量里,以免栈空间溢出造成Runtime Error
错误样例:
int main() {
int a[1000000];
……
}
正确写法:
int a[1000000];
int main() {
……
}
8、 数组大小最好以略大于题目给出的最大的范围为宜,以便处理一些边界情况。尤其用char数组存放字符串时,应注意给字符串结尾的’\0’留出位置。
9、应注意局部变量、数组的初始化。题目中一般有多组测试样例,在处理每组数据前注意对相关变量清零,防止前一组数据的计算结果影响到后一组数据的计算。例如:
int main() {
int a[10];
//此时a数组元素的值是不确定的,不能假设它们一定为0
}
10、 输出必须严格按照题目要求,不得输出多余的空格、换行、“Please input the data...”等,否则会得到Wrong Answer。
11、代码中不得使用文件操作、系统调用等库函数,否则可能得到Restricted Function或Runtime Error
样例题目:
A+B Problem
Input
The first line of the input contains one integer N, (1 <= N <= 100), indicating the number of test cases. Then N lines followed, each contains two integers A and B (1 <= A,B <= 1000).
Output
Output one number in one line for each test case, indicating the sum of A and B.
Sample Input
2
1 2
3 4
Sample Output
3
7