CSP第二轮考试,一共4道大题,每道100分,要求在Linux系统下操作。很多孩子第一次进入到第二轮、平常用的电脑是Windows系统,很容易出现提交文件格式和举办方要求不一致的情况,这种情况是不接受申诉的,认证的成绩只能当成0分处理,哪怕题目是做对了,这是非常可惜的事情,因此,参加第二轮的孩子,一定要提前测试一下考试环境,避免出现爆0的情况。这边老师总结了10点建议,希望参加考试的同学一定要认真学习并注意。
1. 程序完成,写上return 0。如果没写,就是0分。平常Windows系统用Dev C++,不会报错,但是在Linux系统下,这个是有问题的,哪怕思路都对。
2. 文件读和写。这个是和平常Windows系统练习不同的地方,考试时,建议大家先把以下程序先写上。注意,在调试时,可以先注释,但最后一定要认真检查,把注释去掉。
freopen("abc.in","r",stdin);
freopen("abc.out","w",stdout);
3. 程序递交程序递交一定要严格按照当地省份的方式进行递交练习。文件名字,文件夹名称,文件格式,文件夹层级都非常重要,这个必须要做大量练习,确保万无一失。必须要严格按照各个省份要求来,这些内容一定要在考前做大量的刻意练习,确保万无一。
4. 关于注释:调试代码未注释或删除有些同学为了调试代码,写了一些用于辅助输出语句,记住调试完成后一定要将这些语句删除或者注释掉,否则"爆零"!
5. 变量初始化:变量的初始化常见有两种方式:输入和赋值。在使用变量之前记得要初始化。如果定义成全局变量,则系统会自动初始化。如果你定义到了main函数里面,要么是会外部输入,要么就一定要设置初始值!!!
4. 关于注释:调试代码未注释或删除有些同学为了调试代码,写了一些用于辅助输出语句,记住调试完成后一定要将这些语句删除或者注释掉,否则"爆零"!
5. 关于文件名:拓展名错误每个题目的输入输出文件的名字都是试卷上给出的固定名字,千万不要写错,注意大小写敏感。有些Windows系统的电脑的扩展名是隐藏的一 定要让扩展名显示出来。否则轻则影响测试重则爆0。比如有些机器隐藏了扩展名,选手将程序命名为abc.cpp,实际上是abc.cpp.cpp;选手将输入文件合名为abc.in,实际上是abc.in.txt。
6. 关于输出:输出格式如果题目要求数据之间加空格,那就不能换行输出。比如要求输出123,如果选手输出:1,2,3是换行的,则不得分。大小写也要注意,需要仔细看清题目是要求全大写、全小写还是首字母大写。比如要求输出No,则输出NO、no等均不能得分。
7. 关于超时问题:时间和空间限制1秒内最大循环次数不要超过1亿次。1亿次有可能超时也有可能不超时。但是一两千万次肯定不会超时。通常题目会限制内存不能超过256M或512M。所以学会估计内存。比如全局数组inta[1000000]占内存1000000*4/(1024*1024)M≈4M。
8.关于数组大小问题:数组开的太大C++里数组有时候可能会出现莫名其妙的问题所以 一定要记得把数组开大点,并且赋初值。但,数组如果开的太大,会导致内存超限错误或者运行错误,我们数组的大小顶多开到3000万左右,如果确实需要更大的数组,首先尝试优化算法的空间使用,实在找不到优化算法,可以用vector动态数据,map<int>模拟一维数组,map<int,map<int,int>>模拟二维数组等方法解决。数组建议用全局数组,千万不要放到main函数里面。
9.关于数据范围:int的范围一些题目可能会超范围,因此可以考虑直接开long long。
10. 其它策略:程序记得及时保存、题目多读几遍、考试时间三个半小时,可以带点补充能量的饮食食品。
预祝各位考生考试顺利!
少儿编程线上系列课程
我们推出一套完全自主开发的少儿编程线上课程,旨在让更多刚接触编程的孩子能快速入门,提升学习编程的兴趣,并在编程中锻炼思维和问题解决能力。
1)详细可咨询老师微信号:linyang_xmu,扫码加我微信
全部采用3-5人小小形式的直播课,全程互动交流,能掌握每个孩子的学习效果。启发提问式教育,更注重孩子的逻辑思维能力和独立解决问题能力培养。
【图形化课程】:图形化编程:初级+中级+高级+竞赛+考级
目标:学好高级内容利于后续学习C++,参加白名单竞赛获得省赛和国赛奖,提升需求分析和独立解决问题能力
【CSP J/S NOIP竞赛课程1】:CSP初赛基础知识
【CSP J/S NOIP竞赛课程2】:C++语法精讲(学完入门课程再补充8次课)
【CSP J/S NOIP竞赛课程3】:C++基础算法
【CSP J/S NOIP竞赛课程4】:C++数据结构
【扫一扫加我】微信号:linyang_xmu