ACM/ICPC 比赛生涯总结+经验分享

ACM/ICPC 比赛生涯总结+经验分享

1.获奖经历

时间比赛奖励
大一下ACM陕西省赛打铁
大一下CCCC团队二等奖
大二下ACM/ICPC全国邀请赛银奖
大二下CCCC团队特等奖
大三上ACM/ICPC区域赛沈阳站铜奖
大三上ACM/ICPC区域赛南宁站银奖
大三上ACM/ICPC EC-Final上海铜奖
大三下CCCC团队特等奖
大三下ACM/ICPC全国邀请赛金奖
大三下ACM/ICPC多省宁夏金奖
大四上CCPC吉林银奖
大四上ACM/ICPC区域赛南京站银奖
大四上ACM/ICPC区域赛北京站金奖
大四上ACM/ICPC EC-Final西安银奖

2.写在前头

我也算是打了将近3年的ACM/ICPC这个比赛了.在准备这个比赛的过程中,学习到了很多东西,也感觉到人与人之间的巨大差距.我感觉自己并不是一个有竞赛天赋的人,能坚持到最后拿到区域赛金牌,完全就是时间堆砌出来的.

3.训练经验

ACM/ICPC是一个团队协作的比赛,队友之间配合默契显得尤为重要.比赛中所涉及的知识点非常多,对于一个像我一样的普通人,也不可能做到面面俱到.因此,[1][1][1]这需要队伍里每个人都有自己擅长的一方面,大家知识点的并集要能覆盖到比赛的大部分内容,这样的话比赛中就很少能遇到大家都不会的知识点而造成目目相觑的尴尬处境.当然也不是说每个知识点只需要一个人来学就好了.[2][2][2]要保证会的知识点里面,每个知识点至少要队里2个人都会,在遇到这种题的情况,一个人想出做法来之后,可以与另一方沟通,两方都觉得可行的时候再写,避免想出假算法.

我认为训练分为2部分.

  1. 个人训练.目的是为了学习新算法,巩固自己的知识点.
  2. 团队训练.目的是为了模拟赛场环境,进行团队磨合,熟悉题目套路.

个人训练

对于个人训练来说,就我的训练过程来说,分为以下几个阶段.

入门阶段

这一阶段应该从书本看起,我当时看的书是<挑战程序设计竞赛>,也就是所谓的白书.还有刘汝佳的经典红书.我更偏向于看白书,我觉得白书写的更好一些.

当学习完<白书>以后,如果书中的内容大部分都摸透了,这表明比赛题目的很多常见套路你也都学会了,那么你至少也是区域赛铜牌的水平了.

在这一阶段跟着白书练练poj题库.
以下是我在poj上的过题记录.

在这里插入图片描述

提高阶段

入门以后,各种经典专题你都略知一二了,并且你觉得自己能力比刚入门的时候提升了很多,并且跃跃欲试想要打区域赛了.

此时你已经不需要再看书了,取而代之,你应该多刷一刷各种专题.提升自己的知识,比如,你可以去Vjudge上拉几套kuangbin专题训练系列,比如动态规划,搜索呀之类的东西.
在这里插入图片描述
在这里插入图片描述
当然你也可以到洛谷试练场的提高历练地去刷专题啦.
在这里插入图片描述


在这里插入图片描述

你还要经常参加Codeforces上举办的比赛,这些比赛的题目质量大都不错,可以开阔你的思维,使脑子反应更快,更适应题型的变化.当你的rating到1900分的时候,说明你的水平也有很大的提升.
在这里插入图片描述

牛客网经常举办Wannafly挑战赛,还有一些ACM/ICPC赛制的在线训练赛,题目质量很不错,可以自己边刷边补题.

目前为止,你应该有了拿银的实力.

冲金阶段

在拿了几块银牌之后,你并不满足,你决定再拿一块金牌.于是你决定更加努力的训练,去学习一些更难的算法.并掌握这些算法,以期望在区域赛中做出至少一道金牌题.

比如后缀自动机,后缀数组,动态树,可持久化线段树,Splay,点分治,FFT,狄利克雷卷积,莫比乌斯反演…等等等等

那么此时,你可以刷洛谷的省选斗兽场.这些专题可以使你初步了解这些算法,某些情况下初步了解就够用了.平时比赛时候,你不能再遇见金牌题就避而远之,而是要花时间把它啃下来,因为你的目标是夺金.而你做题的时候要有意识的去做难题,简单题可以一掠而过,以节省时间.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

团队训练

团队训练是必不可少的.团队训练的时候最好模拟赛场的环境,一台电脑用来敲代码,其他的电脑用来看题.尽量不要直接复制板子,而是要像赛场一样,抄上去,这样就不会遇到比赛时候抄错板子的尴尬情形.不要因为是训练赛就放肆交题,丝毫不管罚时,这样会养成一个坏习惯.实际上罚时是很重要的,青岛3题从金到铜的惨状你们忘了吗?

提前分锅.谁谁谁看哪种类型题,提前约定好,每个人优先看自己擅长的方面,相当于做了一个最优匹配,这样使得每个人的输出可以达到最大化.

训练赛后一定要补题,总结,写写题解来加深印象.如果只训练不补题,那跟没训练没有任何区别,下次再出这样的题还是不会.

找个靠谱的队友也非常重要,你和你的队友必须同时重视这个比赛,愿意为这个比赛付出时间,这样你们才能打好这个比赛.

4.比赛经验

赛场其实是有很多小技巧的.

  1. 签到题不要马虎,不要因为简单,写完就直接交,多测几组样例,看看边界条件,确认无误后再交题也不迟.不要因为节省个几分钟弄了很多发罚时,那就得不偿失了.
  2. 读题.一道题至少要2个人分别读,相互之间确认过题意再开始做,比赛时候读错题是很要命的事情,相当于增加了无穷多的罚时.
  3. 快读.有的时候TLE了加上一个快读就过了,真的.
  4. 打表找规律.比赛的时候其实是有很多打表找规律的题目的,有很多题其实要想的话是很麻烦的,而打表的话往往会找出规律,写个公式一下就过了.
  5. 打表.ACM还有一类题是要用打表做的,通常表现为时间复杂度较高,正常情况下需要跑个10s-100s不等.有的甚至要跑个半小时,但实际上所有的答案其实并不多,因此我们可以本机提前打表找出所有答案.
  6. 随机.有很多题其实题目出的不是很好可以被随机卡过去比如2018南京站的一道题.所以,遇到不会做的题的时候,想想这个题随机可不可以过,万一过了就非常之幸运了.
  7. (分块)模拟退火.这是一个非常神奇的算法,遇到求最优解的问题时候,不会做的时候多想想这个算法,往往会起到意想不到的效果.
  8. 猜结论.有很多题你的直观感觉答案可能有某种关联,但是你有证明不出来,此时你无妨大胆猜测它成立,试一试,万一就过了呢?比如2017南宁站的一道题考察Dilworth定理的题,我猜测出一个结论当场就过了.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/320869.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YbtOJ#20064-[NOIP2020模拟赛B组Day4]预算缩减【树形dp】

正题 题目链接:http://noip.ybtoj.com.cn/contest/90/problem/2 题目大意 nnn个点的一棵树&#xff0c;求删掉一些边让剩下的连通块大小不小于kkk&#xff0c;求方案数。 解题思路 定义fi,jf_{i,j}fi,j​表示iii的子树现在联通块大小为jjj时的方案数&#xff0c;我们不难发现…

【并查集】团伙(luogu 1892)

团伙 luogu 1892 代码&#xff1a; 定义对手的对手是朋友&#xff0c;朋友的朋友是朋友&#xff0c;现在有n个人和m组关系&#xff0c;如果两个人是朋友那么他们属于同一个团伙&#xff0c;问有多少个团伙 原题&#xff1a; 题目描述 1920年的芝加哥&#xff0c;出现了一…

NCC Meetup 2018 Shanghai 活动小结

NCC Meetup 2018 上海的活动于2018年6月30日在微软上海港汇办公室进行。原本计划30人规模的小型活动&#xff0c;结果收到了逾60人的报名&#xff0c;其中大部均来到现场参加了活动。本次活动得到了微软公司的场地支持&#xff0c;同时非常感谢 范亮先生、 刘浩杨先生和 邹嵩…

【结论】Array

Array 题目大意&#xff1a; 有一个数列&#xff0c;随机交换两个数&#xff0c;原数列和当前数列相同部分有可能有多少个 原题&#xff1a; 题目描述 Alice 有一个数列 ai。 但是她不喜欢这个数列&#xff0c;于是她决定随机交换其中两个数。 Alice 想知道&#xff0c;交…

YbtOJ#20065-[NOIP2020模拟赛B组Day4]模拟比赛【dp】

正题 题目链接:http://noip.ybtoj.com.cn/contest/90/problem/3 解题思路 有nnn道题&#xff0c;mmm个人。一些题目是让某些人一定得分&#xff0c;一些题目是让某些人可以能得分。 求排名前sss的人选出ttt个人&#xff0c;可能的集合个数。 解题思路 显然我们如果要判断一…

Asp.Net Core 使用Quartz基于界面画接口管理做定时任务

今天抽出一点点时间来造一个小轮子&#xff0c;是关于定时任务这块的。这篇文章主要从一下几点介绍&#xff1a;创建数据库管理表创建web项目引入quarzt nuget 包写具体配置操作&#xff0c;实现定时任务处理第一步&#xff1a;创建一个空web项目&#xff0c;引入quarzt nuget …

YbtOJ#20066-[NOIP2020模拟赛B组Day4]筹备计划【线段树,树状数组】

正题 题目链接:http://noip.ybtoj.com.cn/contest/90/problem/4 题目大意 一个集合[1,n]∈S[1,n]\in S[1,n]∈S&#xff0c;和一个序列aaa。有操作 序列aaa的一个数加上xxx序列aaa的一个数减去xxx将[l,r][l,r][l,r]加入集合SSS将[l,r][l,r][l,r]删除出集合SSS 每次修改后求…

【模拟】Biotech

Biotech 题目大意&#xff1a; 有一堆细胞&#xff08;放电或不放电&#xff09;&#xff0c;当周围细胞放电个数小于2或大于3时&#xff08;八个方向&#xff09;&#xff0c;此细胞变为不放电&#xff0c;当周围细胞放电个数为2时&#xff0c;此细胞不变&#xff0c;当周围…

.NET Core微服务之服务间的调用方式(REST and RPC)

一、REST or RPC ?1.1 REST & RPC微服务之间的接口调用通常包含两个部分&#xff0c;序列化和通信协议。常见的序列化协议包括json、xml、hession、protobuf、thrift、text、bytes等&#xff1b;通信比较流行的是http、soap、websockect&#xff0c;RPC通常基于TCP实现&am…

【记忆化搜索】【dfs】【递归】Chocolate

Chocolate 题目大意&#xff1a; 有一块巧克力&#xff08;每一个单位有一定的美味值&#xff09;&#xff0c;判断是否可以把他分为k块美味值相等的小巧克力 原题&#xff1a; 题目描述 Charlie 有一块巧克力。 这块巧克力是矩形的&#xff0c;有 n 行 m 列一共 n m 个大…

YbtOJ#20063-[NOIP2020模拟赛B组Day4]古老谜题【统计】

正题 题目链接:http://noip.ybtoj.com.cn/contest/90/problem/1 题目大意 给出一个010101序列&#xff0c;求有多少对(l,p,r)(l,p,r)(l,p,r)使得l<p<rl<p<rl<p<r且sp1s_p1sp​1且s(l,p)s(p,r)s(l,p)s(p,r)s(l,p)s(p,r)&#xff08;s(l,r)s(l,r)s(l,r)表示l…

Nuget 多平台多目标快速自动打包

构建现代的 .Net 应用离不开 Nuget 的支持&#xff0c;而快速打包 Nuget 成了提高生产率的有效方法。1. 前置条件为了实现 Nuget 的快速打包&#xff0c;我们需要先解决一些前置依赖&#xff0c;无论是 .Net Framework、Mono 或者 .Net Standard&#xff08;.Net Core&#xff…

P4495-[HAOI2018]奇怪的背包【数论,dp】

正题 题目链接:https://www.luogu.com.cn/problem/P4495 题目大意 nnn个物品大小为viv_ivi​&#xff0c;每个物品有无数个&#xff0c;背包的重量定义为大小和%P\%P%P。 qqq次询问&#xff0c;问一个www表示有多少种取法使得背包重量为www&#xff08;两种方案不同仅当有一种…

初一模拟赛(5.4)

成绩&#xff1a; 注&#xff1a;rank是有算其他dalaodalaodalao的 rankrankranknamenamenamescorescorescoreT1T1T1T2T2T2T3T3T3T4T4T4222lyflyflyf250250250100100100100100100303030202020333fyfyfy240240240100100100100100100404040000444tjhtjhtjh230230230100100100100…

Identity Server 4 - Hybrid Flow - 使用ABAC保护MVC客户端和API资源

这个系列文章介绍的是Identity Server 4 实施 OpenID Connect 的 Hybrid Flow. 保护MVC客户端: Identity Server 4 - Hybrid Flow - MVC客户端身份验证, Identity Server 4 - Hybrid Flow - Claims保护API资源(这里用到了RBAC: Role-based Access Control 基于角色的访问权限控…

P3599-Koishi Loves Construction【构造,数论】

正题 题目链接:https://www.luogu.com.cn/problem/P3599 题目大意 构造一个nnn的排列&#xff0c;要求满足其中一个给定的要求 对于每个前缀和在模nnn意义下不同对于每个前缀积在模nnn意义下不同 解题思路 对于加法&#xff0c;显然nnn要填在第一位&#xff0c;那么这一位的…

【图论】【并查集】矩形(ssl 1222)

矩形 ssl 1222 题目大意&#xff1a; 有n个矩阵&#xff0c;现在将有重叠部分的两个矩阵合并成一个图形&#xff0c;问有多少个图形 原题&#xff1a; 题目描述 在一个平面上有n个矩形。每个矩形的边都平行于坐标轴并且都具有值为整数的顶点。我们用如下的方式来定义块。…

Asp.Net Core Web Api图片上传及MongoDB存储实例教程(一)

图片或者文件上传相信大家在开发中应该都会用到吧&#xff0c;有的时候还要对图片生成缩略图。那么如何在Asp.Net Core Web Api实现图片上传存储以及生成缩略图呢&#xff1f;今天我就使用MongoDB作为图片存储&#xff0c;然后使用SixLabors作为图片处理&#xff0c;通过一个As…

FFT算法学习笔记

写在前边 1.辣鸡RRRR_wys之前csdn的博客&#xff0c;千年不更。。。还很水。。。于是开了这个Blog。。。妄图拯救一下自己 2.最近接触了一些多项式理论。于是翘掉了愉快的高频自控&#xff0c;通过《算导》稍稍学习了一下 3.算法竞赛中&#xff0c;FFT主要解决多项式的乘法等问…

YbtOJ#20060-[NOIP2020模拟赛B组Day3]字串修改【模拟】

正题 题目链接:http://noip.ybtoj.com.cn/contest/86/problem/2 题目大意 给两个字符串&#xff0c;第一个中的∗*∗号可以替换为若干个&#xff08;可以为0个&#xff09;相同的它的前一个字符。求能否构成第二个字符串。 解题思路 把所有的∗*∗号去掉然后在有的∗*∗号的…