出题规范
出题规范,
命名规范
编号命名规范:
必须严格按照编号命名规范,这样才能保证无论什么时候出题,在前台展示的题目都是有分类顺序的
- 基础:00-xx-xx
- 算法:01-xx-xx
- 数据结构:02-xx-xx
- 图论:03-xx-xx
- 数学:04-xx-xx
- 按照这个顺序来,比如对于基础的题,顺序结构的题,我们命名为00-00-xx, 分支结构命名为00-01-xx,以此类推
题目命名规范
按照这个来
细节规范
-
出题人来源写明,按照这个格式: JIN YUN TAO(必须写明),方便后续联系出题人
-
题目数据必须说明类型,和数据范围
-
标签统一写成:
萌新计划
-
测试样例总分必须是100
-
$$和他周围的字符需要添加一个空格
-
输入输出首先描述输入几行,输出几行
-
对数列和字符串 使用这个形式来让它显示(markdown加符号 `` 即可)
``
- 规则类的东西 或者引用的东西 可以用引用的形式来展
markdown语法:
>当..
>当..
造数据代码模板
SPJ模板
代码补齐模式
- PREPEND BEGIN 到 PREPEND END之间是头文件和一些预定义的宏,或者变量,这些需要出题人写
- TEMPLATE BEGIN到TEMPLATE END之间是展示给用户的代码,用户可以替换当中的代码
- APPEND BEGIN到APPEND END之间是程序的其他内容,比如主函数之类的,这些需要出题人写
- 后台程序先拿出pre之间的代码,再拿出temp之间的代码(用户在前台提交的部分代码 会代替temp之间的代码), 再拿出append之间的代码,三段代码按这个顺序拼接后作为用户代码,然后再进行编译运行,这是整个流程和原理
模板代码(c++)
//PREPEND BEGIN
#include <iostream>
//PREPEND END
//TEMPLATE BEGIN
int add(int a, int b) {
// Please fill this blank
return ___________;
}
//TEMPLATE END
//APPEND BEGIN
int main() {
std::cout << add(1, 2);
return 0;
}
//APPEND END