Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 105 additions & 0 deletions docs/intro/contest.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
# 关于竞赛

## 1. 竞赛有啥用

功利角度来讲,竞赛对于加分(绩点)有很大帮助,学校公布的一类赛名单中,除大英赛外拿省一以上均可加分,最高累计0.5,具体细则可等开学后自行查阅教务处网站

毕业角度 ~~(是的确实是需要这方面)~~ 来讲,燕山大学每名学生毕业前都至少需要6创新创业学分,而竞赛是被很多人拿来进行填补的事物之一(另一个是大创项目,该方面此处不展开),而竞赛挣双创学分也比较容易(校赛拿奖就行,一到五类赛均可)。

个人能力角度来讲,打竞赛有利于其提升 ~~(我知道这条很敷衍,但确实不知道怎么说(bian)了)~~


## 2. 信院可以打的竞赛有什么

理论上讲,几乎所有燕大认可的竞赛对参赛选手的年龄、专业、学校基本都没什么限制 ~~(有限制的基本也不会被认可了)~~,但因为专业知识等差距,故每个专业之间相注重的比赛确实有差距

抛去像大英赛、互联网+这种基本没什么专业壁垒的竞赛(不代表它们不加分),信院学生一般所参加的便是算法竞赛,因此本篇文章将只介绍此。 ~~(另一个原因是作者只搞过这一种玩意)~~

## 3. 算法竞赛赛制

### 3.1 oi赛制

该种赛制 ~~类似于高考~~ 就是将代码或答案在本地敲下来之后粘贴至答题框中,或直接将文件上传提交,没有在线评测,没有实时榜单,完全黑箱。

最终计算分值时,一般会以各测试点的分数总和来计算(类似luogu做完每题后得出的分值),总和越高排名越高

使用该赛制的比赛有蓝桥杯c/c++组与java组。(顺带一提,2022年后燕大大概率只会报A组难度)

### 3.2 acm赛制

该种赛制允许选手在线提交并查看结果是否正确,且有实时榜单

最终计算分值时,每道题只有过与没过两种情况,且每道题错一次便增加固定罚时时长(一般为20min),在x时间答对增加x时长,最终以题目正确数为第一关键字,罚时时长作为第二关键字进行排名

使用该赛制的比赛有icpc/ccpc(统称为xcpc)。


### 3.3 ioi赛制

该种赛制允许选手在线提交并查看结果是否正确,且有实时榜单

最终计算分值时,一般会以各测试点的分数总和来计算,总和越高排名越高

使用该赛制的比赛有团体程序设计天梯赛(简称cccc)。

# 4 练习网站

1. [洛谷](luogu.com.cn)

大约是对新手最为友好的oj?(online judge,在线评测的简称),难度以不同颜色进行区分,新手可在侧边栏的题单中寻找相应专题进行训练,新手建议难度以红、橙为主,登录后大部分题目均可查询其题解,题目分数以分值点形式为主,且可对评测数据进行下载

2. [牛客](https://ac.nowcoder.com/)

与洛谷类似,不同的是难度划分相对一般,且基本不可下载评测数据,不过有官方题解,且在线比赛的环境优良,国内很多高校都会把自家线上比赛的题放上去

3. [codeforces](codeforces.com)

俄罗斯的一个比赛网址,有英俄两种官方语言可选。如果你想将来参加icpc/ccpc系列比赛,那么英文题是一定要去适应的。

每名打过至少一场比赛的网站中的用户都会有一个rating值,可以估算该选手的水平区间,每打一场比赛均会使得rating值上升或者下降,rating越高证明实力越强。

网站题目优良,题目难度以分值划分,新手1000分以下的题目均可以尝试练习。自家在线比赛有div1-div4四种等级,新人可尝试div4来看看自身什么水平。同时,对于一些大型比赛codeforces上也有复现赛(即由原题组成的比赛),各位可以挑战以下自己。

虚拟赛(virtual contest)是cf的另一大特点,如果你想参加一场比赛但错过了,可以选择虚拟赛进行模拟,当然虚拟赛不会影响rating值。

所有比赛赛制几乎均为acm赛制,待比赛结束后可查看较小的线上数据。

4. [atcoder](atcoder.com)

该网站由日本人创立,官方语言有英、日两种。

整体与cf相似,不同点有下:

1、无虚拟赛

2、每场比赛可查看自身整体ac了多少数据点(但分数还是只有满分与0两种,毕竟是acm赛制)

3、题目相对cf及其精炼,几乎没有其他多余信息

4、比赛时间较为阳间 ~~(cf那种晚上十点开赛的真遭不住)~~

以上内容欢迎补充

# 5 软件推荐

[比较好用的IDE,进入之后下载最新版就行](https://github.com/Embarcadero/Dev-Cpp),不出意外的话这玩意可以伴随着整个大学c/c++的学习时光

(如果不会使用github的话直接在网上搜索教程即可)

# 6 题目结果讲解

一般情况下,我们答题后无论什么网站均会显示结果,但AC、WA、TLE等等简写又会使得新手一脸懵,于是在此对常见结果做一番简短介绍:

-------

AC(accept):数据点输出正确无异常

WA(Wrong answer):数据点输出错误

TLE(time limit error):数据点运行超时

MLE(memory limit error):数据点占用空间超限制

RE(running error):数据点运行时错误

UKE(unknown error):数据点出现未知错误(一般重新交一遍就行,如果不行就重构吧)