CSP-J/S第二轮认证注意事项

2023-10-11 10:44

本文主要是介绍CSP-J/S第二轮认证注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

金九银十日,复赛进行时。 CSP-J/S复赛马上就要开始了,但是每年都有很多孩子因为一些不起眼的失误导致一年的努力付之东流。下面为大家准备了一些复赛的注意事项,避免踩坑。

在哪里写代码

第二轮比赛与我们平时在OJ上做题形式不同,需要我们将文件放入规定的目录,然后汇总提交,由系统统一评测后得到分数。那么应该在哪里写代码呢?

一般情况下,主办方会在计算机的E盘(或者D盘)根目录下建立以考生准考证编号命名的文件夹,考生应检查该文件夹名称是否正确(包括编号及大小写字母)。如有错误须立即上报监考人员,由监考人员进行更改。

确认无误后,考生须为每道试题再单独建立一个子文件夹,子文件夹名与对应的试题英文名相同(参见试题封面页)。考生提交的每道试题的源程序(.cpp文件)也必须按照对应的试题命名,分别存放在其子文件夹下。

下面以CSP-J/S 2021 第二轮认证 入门组为例,山东考生张三,准考证号SD-1001,试题封面页如下:
在这里插入图片描述

以下演示以Windows环境为主,个别省份使用的是NOI Linux,操作基本类似。

SD-1001考生的答题目录如下:
在这里插入图片描述
每道题的源程序要放在对应的子文件夹下:
在这里插入图片描述

注意事项

  1. 仔细检查选手的目录名和题目的目录名,并确定拼写正确
  2. 源程序文件名(.cpp文件)必须使用英文小写,确定拼写正确
  3. 比赛结束时只保留源程序文件(.cpp文件)即可,其它文件可以删除。

如何输入输出

除了答题方式不同,考试还要求每道题从指定的文件输入数据,并将结果保存到指定输出的文件中。以上要求可以通过重定向输入输出来完成,方法如下。

在主函数的开头加入下面两行代码:

freopen("输入文件名", "r", stdin);
freopen("输出文件名", "w", stdout);

输入文件名和输出文件名在试题封面页可以找到。以candy这个题为例,其输入文件名为candy.in,输出文件名为candy.out
在这里插入图片描述
下面是实现代码:

#include <iostream>
using namespace std;
int main()
{//将标准输入输出重定向到文件中,注意文件名都是小写,不能有多余的空格freopen("candy.in", "r", stdin); freopen("candy.out", "w", stdout);int n, L, R;cin >> n >> L >> R;if(L / n != R / n) cout << n - 1;else cout << R % n;return 0;
}

加了freopen后,就不能像之前一样在控制台输入数据测试程序了。测试代码可以这样操作:

  • 在该文件夹下新建一个文本文档,将其重命名为candy.in(注意扩展名)
  • 使用记事本打开该文档,将测试样例拷贝过来,并保存
  • 运行程序,在目录下会自动生成candy.out文件,用记事本打开,检查输出结果。

当然,也可以先注释掉这两行代码,等程序测试无误以后再去掉注释。一定要记得去掉注释!!!

注意事项

  1. 输入输出的文件名必须使用英文小写,并与试题封面页要求的输入文件名和输出文件名相同,不能有多余的空格
  2. 如果注释掉了文件重定向的代码,等程序测试无误后,一定要记得去掉注释

其它注意事项

  1. 再次提醒,考试结束前请检查文件夹名,文件夹位置,文件名以及文件输入输出。
  2. 注意数据类型,需要时请使用long long或写高精度。(十年OI一场空,不开long long见祖宗)
  3. 注意数组大小,数组太大将无法运行导致0分。一个int为4字节,long longdouble为8字节,数组大小要在 3 × 1 0 6 3\times10^6 3×106以内。也不要数组太小,小心RE
  4. 不要忘记变量初始化,全局变量会自动初始化。
  5. 注意下标不要越界,比如背包j-w[i]时需要确实其大于等于0。
  6. 若使用直接输出进行调试,比赛结束前一定要再检查一遍输出的中间结果内容是否被删除,包括多余的换行。
  7. 涉及到有无解,可以直接输出无解骗分
  8. 不要使用nextY1y1作为变量名(同理还有hashtimepipeynj0j1jn),会导致CE。另外不要使用gets函数(C++14已经移除,用getline替代)。
  9. 检查是否直接除以0。
  10. scanf读取变量不要忘记加地址符。
  11. 不建议使用快读,关闭输入输出同步流即可。
  12. 编译记得开-std=c++14
  13. 输出格式不要出错,忘记输出换行或输出多个空格,如输出一行一定要输出换行。
  14. 不确定要写暴力。有想法且时间足够须对拍后作为自己的最终代码。
  15. 优先队列为priority_queue(默认大顶堆),哈希表unordered_map,不要拼错。
  16. double的比较需要使用fabs,不能直接==。例如:
#include <iostream>
#include <cmath>  // 绝对值函数头文件
using namespace std;
int main()
{const double eps = 1e-8; // 限定误差范围    double a = 10.0 / 3;double b = 3.333333333333 ;if (fabs(a - b) <= eps) cout << "a和b相等" << endl;else cout << "a和b不相等" << endl;return 0;
}
  1. 等监考老师收完代码再离场。

这篇关于CSP-J/S第二轮认证注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/187497

相关文章

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

C++中detach的作用、使用场景及注意事项

《C++中detach的作用、使用场景及注意事项》关于C++中的detach,它主要涉及多线程编程中的线程管理,理解detach的作用、使用场景以及注意事项,对于写出高效、安全的多线程程序至关重要,下... 目录一、什么是join()?它的作用是什么?类比一下:二、join()的作用总结三、join()怎么

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

MySQL 获取字符串长度及注意事项

《MySQL获取字符串长度及注意事项》本文通过实例代码给大家介绍MySQL获取字符串长度及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 获取字符串长度详解 核心长度函数对比⚠️ 六大关键注意事项1. 字符编码决定字节长度2

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

详解MySQL中DISTINCT去重的核心注意事项

《详解MySQL中DISTINCT去重的核心注意事项》为了实现查询不重复的数据,MySQL提供了DISTINCT关键字,它的主要作用就是对数据表中一个或多个字段重复的数据进行过滤,只返回其中的一条数据... 目录DISTINCT 六大注意事项1. 作用范围:所有 SELECT 字段2. NULL 值的特殊处

MySQL 打开binlog日志的方法及注意事项

《MySQL打开binlog日志的方法及注意事项》本文给大家介绍MySQL打开binlog日志的方法及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、默认状态二、如何检查 binlog 状态三、如何开启 binlog3.1 临时开启(重启后失效)

Spring Security自定义身份认证的实现方法

《SpringSecurity自定义身份认证的实现方法》:本文主要介绍SpringSecurity自定义身份认证的实现方法,下面对SpringSecurity的这三种自定义身份认证进行详细讲解,... 目录1.内存身份认证(1)创建配置类(2)验证内存身份认证2.JDBC身份认证(1)数据准备 (2)配置依

电脑死机无反应怎么强制重启? 一文读懂方法及注意事项

《电脑死机无反应怎么强制重启?一文读懂方法及注意事项》在日常使用电脑的过程中,我们难免会遇到电脑无法正常启动的情况,本文将详细介绍几种常见的电脑强制开机方法,并探讨在强制开机后应注意的事项,以及如何... 在日常生活和工作中,我们经常会遇到电脑突然无反应的情况,这时候强制重启就成了解决问题的“救命稻草”。那