paoxiaomo的XCPC算法竞赛训练经验

楼主作为一个普通二本的ICPC选手,在0基础的情况下凭借自学,获得过南昌邀请赛金牌,杭州区域赛银牌,一路上经历过不少的跌宕起伏,如今将曾经摸索出来的学习路线分享给大家

一,语言基础

学习C++语言基础语法,尝试简单循环,递归等算法的实现,学习C++STL库,了解基本用法,刷洛谷的入门,基础题,熟练运用c++进行基本的实现,夯实基础。掌握基本调试技巧。

二,算法筑基

针对洛谷上的知识点题单进行板刷,掌握动态规划,图论基础,数论基础等基础算法,如:

●双指针/滑动窗口

●DFS/BFS

●动态规划基础

●图论基础

●数论基础

一般做题难度在绿题和黄题之间,可以参加codeforces的div3,4

三,算法进阶

1,研究数据结构

掌握如下数据结构的原理,最好能手撕:

●树状数组

●线段树(最好会可持久化线段树)

2,掌握进阶算法

●各种数位DP

●网络流

●字符串基础(kmp/字典树)

3,实战训练

●CF每周都打,目标1600+,补到div2D难度的题

●VP区域赛并补到铜牌题

ACM过往的拿牌团队中,至少有一人达到1600分,到达1600后初步有冲击铜牌的水平

四,比赛冲刺

学习所有高级算法几乎是不可能的,我们要有取舍。

1,高阶算法学习

部分高阶算法可以不用全部学会,可以选择几个方向重点突破,我列举其中几个

●各种平衡树应用(Link-cut-tree,分裂,合并)

●后缀自动机以及后缀自动机相关应用(自动机上DP等)

●计算几何(旋转卡壳等,需要有一套无惧卡精度的板子)

●多项式全家桶(NTT,FFT等)

2,思维强化

●CF冲击1900(补题到div2E)

●VP正式比赛补题到银牌,自己擅长的方向补到金牌

3,战略优化

●制定团队分工和开题策略

●一起VP磨合沟通能力

在这过程中可以建立个人代码板子库,我的代码板子库:https://gitee.com/paoxiaomo/xcpc,实战可以有效提升A题速度

个人训练记录:

相关推荐
计算机编程-吉哥9 分钟前
脑肿瘤MRI智能识别系统:基于深度学习的像素级脑肿瘤语义分割平台【计算机毕业设计选题推荐】
人工智能·python·深度学习·算法·毕业设计·课程设计·大数据毕业设计选题推荐
用户2049375549534 分钟前
端侧语音部署踩坑:模型能跑不等于终端真的能用
后端·算法
shehuiyuelaiyuehao1 小时前
算法39,位运算,消失的两个数字
java·数据结构·算法
ZiLing1 小时前
2026 ROS 2 Lyrical 踩坑实录(一):编译与依赖——rosdep、现代 CMake 与 CMake 4.x
算法
Murphy_lx1 小时前
1124. 表现良好的最长时间段
c++·算法
aramae1 小时前
模拟实现strstr函数(C语言)
c语言·开发语言·算法
liliangcsdn1 小时前
因子权重矩阵处理-滞回缓冲带+降频稳定化动态重选
开发语言·python·算法
敲代码的嘎仔2 小时前
自己设计了一个兑换码算法:自增ID + Base32转码 + 按位加权签名 + 异或混淆,面试被追问细节时终于不用慌了
java·数据库·mysql·算法·微服务·面试·职场和发展
云析赢指标公式网43 小时前
文华WH6布林轨道均线强弱共振指标公式
前端·算法
luj_17683 小时前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法