余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

干货|信奥赛题规律和得分技巧

xiyangw 2023-05-14 11:24 14 浏览 0 评论

往年很多考生考完复赛会说:

爆零了!

干货|信奥赛题规律和得分技巧

“题目挺基础的,就是不会做”

“题目的每个字都认识,连起来就不知道啥意思了”

“知识点都听过,一做题还是不会”


“数组又开大了”

“该死的freopen又忘写了”

……

复赛为何爆零?

根源还是在于对复赛的题目组成规律和考试技巧掌握不够。


下面就跟着小编一起来聊一聊关于复赛得分那些事儿吧!


赛题组成规律

第一级:裸题

裸题也叫单知识点题,特点是直接考察算法,且算法基本没有什么变化,这样的题在真题中已经不多见了。

第二级:组合题

组合题的特点是由多种算法、技巧组合在一起考察。解组合题时需要读懂题目大意,并且能够拆解出需要运用到哪几个知识点。

第三级:性能题

性能题的特点是需要灵活运用算法做优化,且算法会有变动。主要考虑两个方面:一方面是多知识组合求解题目,另一方面还要考虑大数据范围下的运算性能。如果仅用枚举等暴力思路求解,往往会因超时丢分。


2021CSP-J复赛题型分析

近年的真题,其实已经不会出现裸题了,而且也不太区分组合题和性能题,基本都是组合性能题。

【分析】数学裸题 性能题

考察数学、模拟,属于送分题;

有性能要求,需要数学推导进行性能优化。


【分析】组合题 性能题

考察暴力、模拟、排序;指针数组、排序算法;

有性能要求,需要深人理解并灵活运用排序算法。



【分析】组合题

考察暴力、模拟、字符串;

map标记、字符串处理、多情况判断;

基本没有性能要求,模拟难度大些。


【分析】组合题 性能题

暴力、模拟、数据结构;链表模拟;

有性能要求,需要借助特殊数据结构

模拟难度较大、细节较多。


复赛考试技巧


合理安排考试

1)合理安排做题顺序,先做简单题。

正常来说,每道题的难度是递增的,第一道最简单,第二、三道稍微难一些,第四道最难。(第二、三道考的点不一样,具体还是看情况)。

2)合理安排考试时间划分——二等奖策略。

刚学完语法,只学了些暴力算法,水平较初级的考生就给自己定保1以争2的目标。不要想着做4个题,你就是来做对第1个题的。

第一道题:2个小时保证能拿到80-100分;剩下1.5小时,其他题打暴力算法,争取能拿些分)。S组也同样采取这样的策略。

3)合理安排考试时间划分——一等奖策略。

水平稍好,学过算法的考生,可以制定保2争3的目标。做好第1-2题,就有希望拿一等奖了。尽量把第二题或者第三题也做对,看个人擅长哪一类的算法。

时间分配上是前2个小时把1、2题拿下,剩下的时间共3、4题,(第3题应该是能做的,第4道基本放弃,只拿暴力)


规避典型错误

1)目录结构不要写错

考试时每道题都会有对应的英文名称,一般在D盘或E盘有建好了一个以你考号命名的文件夹,在这个文件夹下面需要建四个子文件,名称分别是这四道题的英文名称(注意不要写错,一般都是小写),在这四个子文件中分别放对应题目的源代码(.cpp文件),不要放其他运行结果等文件,只需放源代码即可。这里非常需要注意,名称不要写错,否则就是直接爆零!

2)文件重定向

竞赛跟平时练习不一样,需要在代码中加上的两句话——freopen.

例如:freopen("water.in,"r",stdin);

freopen("water.out","w",stdin)

("r"是“读”,"w"是写)

这两行代码是写在主函数的最开头,解题代码就写在下面。

注意头文件cstdio记得写,否则就又是爆零了(一般有点经验的同学,都会复制下来,当做一个小模板,每次粘贴进去)。建议大家考前在考前自己试一下,尤其是第一次参加的同学。

3)代码编写上的爆零

注意主函数的返回型必须是int,程序结束必须返回0

在实际写代码中,还要注意避免数组问题而爆零。比如开一个10000*10000的数组,编译是没有问题的,但是实际上提交上去之后就有限制了。这种错误失的就不是部分分了,是全部0分。

4)关于头文件

例如memset需要头文件<cstring>,不引就错了。这个爆零,大家在本地写代码,不写头文件是没事的,但是提交上去之后的环境就限制死了,会直接爆零。所以,需要注意常用的函数对应的头文件。

还有一个关于万能头,引万能头容易出现错误,需要在命名的时候避免一些比较直白的单词了,一定要偏一点。




信息学竞赛是一场艰难、持久的挑战。

一方面,比赛难度逐级攀升。不仅考代码能力,更是要从阅读题目、分析题目、分解知识点,考虑性能问题,优化解决方案等多方面考察考生的能力。

另一方面,实际竞赛过程中氛围上的紧张感、时间上的紧迫感,都非常考验考生情绪管理、时间管理等考试综合能力

因此我们建议各位考生:信奥之路,基础为重。打好基础,考试无忧。

咨询课程,请私信小编,并留下联系方式

相关推荐

辞旧迎新,新手使用Containerd时的几点须知

相信大家在2020年岁末都被Kubernetes即将抛弃Docker的消息刷屏了。事实上作为接替Docker运行时的Containerd在早在Kubernetes1.7时就能直接与Kubelet集成使...

分布式日志系统ELK+skywalking分布式链路完整搭建流程

开头在分布式系统中,日志跟踪是一件很令程序员头疼的问题,在遇到生产问题时,如果是多节点需要打开多节点服务器去跟踪问题,如果下游也是多节点且调用多个服务,那就更麻烦,再者,如果没有分布式链路,在生产日志...

Linux用户和用户组管理

1、用户账户概述-AAA介绍AAA指的是Authentication、Authorization、Accounting,即认证、授权和审计。?认证:验证用户是否可以获得权限,是3A的第一步,即验证身份...

linux查看最后N条日志

其实很简单,只需要用到tail这个命令tail-100catalina.out输入以上命令,就能列出catalina.out的最后100行。...

解决linux系统日志时间错误的问题

今天发现一台虚拟机下的系统日志:/var/log/messages,文件时间戳不对,跟正常时间差了12个小时。按网上说的执行了servicersyslogrestart重启syslog服务,还是不...

全程软件测试(六十二):软件测试工作如何运用Linux—读书笔记

从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到。对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你对Linux...

Linux运维之为Nginx添加错误日志(error_log)配置

Nginx错误日志信息介绍配置记录Nginx的错误信息是调试Nginx服务的重要手段,属于核心功能模块(nginx_core_module)的参数,该参数名字为error_log,可以放在不同的虚机主...

Linux使用swatchdog实时监控日志文件的变化

1.前言本教程主要讲解在Linux系统中如何使用swatchdog实时监控日志文件的变化。swatchdog(SimpleWATCHDOG)是一个简单的Perl脚本,用于监视类Unix系统(比如...

syslog服务详解

背景:需求来自于一个客户想将服务器的日志转发到自己的日志服务器上,所以希望我们能提供这个转发的功能,同时还要满足syslog协议。1什么是syslog服务1.1syslog标准协议如下图这里的fa...

linux日志文件的管理、备份及日志服务器的搭建

日志文件存放目录:/var/log[root@xinglog]#cd/var/log[root@xinglog]#lsmessages:系统日志secure:登录日志———————————...

运维之日志管理简介

日志简介在运维过程中,日志是必不可少的东西,通过日志可以快速发现问题所在。日志分类日志分类,对不同的日志进行不同维度的分析。操作系统日志操作系统是基础,应用都是在其之上;操作系统日志的分析,可以反馈出...

Apache Log4j 爆核弹级漏洞,Spring Boot 默认日志框架就能完美躲过

这两天沸沸扬扬的Log4j2漏洞门事件炒得热火朝天:突发!ApacheLog4j2报核弹级漏洞。。赶紧修复!!|Java技术栈|Java|SpringBoot|Spring...

Linux服务器存在大量log日志,如何快速定位错误?

来源:blog.csdn.net/nan1996jiang/articlep/details/109550303针对大量log日志快速定位错误地方tail/head简单命令使用:附加针对大量log日志...

Linux中查看日志文件的正确姿势,求你别tail走天下了!

作为一个后端开发工程师,在Linux中查看查看文件内容是基本操作了。尤其是通常要分析日志文件排查问题,那么我们应该如何正确打开日志文件呢?对于我这种小菜鸡来说,第一反应就是cat,tail,vi(或...

分享几款常用的付费日志系统,献给迷茫的你!

概述在前一篇文章中,我们分享了几款免费的日志服务器。他们各有各的特点,但是大家有不同的需求,有时免费的服务器不能满足大家的需要,下面推荐几款付费的日志服务器。1.Nagios日志服务器Nagio...

取消回复欢迎 发表评论: