当前位置: 首页 > news >正文

如何学习编程

编程之路上,如何去练习以及比赛(代码篇)

“代码不会骗人,编译器永远说真话。”
—— 某位 Debug 到崩溃的选手


1. 如何开始学习编程

路径自学课程
资源官方文档、开源书、B 站、Stack OverflowMOOC(Coursera / 学堂在线)、大学课堂、付费训练营
节奏自定,容易三天打鱼固定课表,有人催作业
成本时间成本极高金钱成本可能极高
优势练成“搜商”,终身受用体系化,少走弯路
信息过载,容易学废填鸭式,学完还是不会写

建议组合拳

  • 先用 1~2 门优质课程打通任督二脉(语法 + 基础算法)。
  • 再转自学模式,项目驱动 + 刷题巩固

2. 刷题练习大法

2.1 有效刷题的三板斧

  1. 难度阶梯
    语法题 → 经典模板题 → 提高题 → 综合题 → 毒瘤题。
    不要一上来就 Hard,人会裂开。

  2. 三遍法

    • 第 1 遍:独立思考,写不出来直接看题解。
    • 第 2 遍:隔天默写,确保理解。
    • 第 3 遍:一周后回炉,手写 bug-free。
  3. 错题本 2.0
    用 Git 建 mistake/ 目录,每道 WA 代码单独 commit,写 50 字总结。
    下次比赛前 git log --oneline 复习,效率爆表。

2.2 使用 AI 刷题的正确姿势

场景正确打开方式错误示范
读不懂题让 AI 翻译 + 举例直接要代码
没思路让 AI 给“提示链”:先暴力 → 再优化一键复制粘贴
Debug 不出来贴报错,让 AI 做 gdb 助教把 AI 当 Stack Overflow

底线:把 AI 当教练,不当枪手。

2.3 如何“抄”代码

  1. 手打而不是 Ctrl-C / Ctrl-V。
  2. 逐行加注释:抄一行,问自己“这行不写行不行?为什么”。
  3. 改变量名、改结构,确保和原实现不一样。
  4. 闭卷复现:隔一天,凭记忆再写一次。

经过这四步,抄来的代码就内化成肌肉记忆了。


3. 如何对待编程赛事

把比赛当体检

  • 赛前 2 周:专题复习 + 真题模拟。
  • 赛中:先签到题稳心态,再开中档题,最后冲难题。
  • 赛后 24 h 内:补题 + 写总结博客,趁热打铁。

长期主义
把每一场比赛当作里程碑,而不是终点。
赢了总结优势,输了总结教训,持续迭代,终有一日你能把奖杯当杯子用。


如何速通各个考级/赛事

1.电子学会

电子学会为考级,需要支付考级费,目前如果第一次考级有成绩,就不能进行第二次考级,所以机会要把握
电子学会会公开考级内容,首先目标就是攻克各个内容,把不会的变成会的
刷题:多刷往年的真题,考级的时候会遇到往年的真题

2.计算机学会(CSP-J/S等)

非专业级认证和专业级认证,需要报名费,需要实打实的学习,练习
可以考很多次,分为初赛(选择判断),复赛(编程)
刷题:各个OJ平台提供考前模拟,多参加比赛也是有效措施

###蓝桥杯

需要报名费,多语言赛事,含金量高
分为多个级别,最高为国家赛事

参加此比赛的人挺多,所以蓝桥杯的比赛建议较多

接下来,给出蓝桥杯(其他比赛也可以参考)的刷题建议

一、先定目标

  • 省三:保基础题 + 填空题 60 % 正确率
  • 省一/国二:真题 80 % 以上,难题至少暴力分不丢
  • 国一:所有模板秒敲,能在 30 min 内切掉 2 道中等题

二、知识清单(按权重排序)

  1. 必考模板
    ‑ 前缀和 / 差分 / 离散化
    ‑ 二分、双指针、单调栈 / 队列
    ‑ DFS/BFS(连通块、最短路、拓扑)
    ‑ DP:背包、区间 DP、状压 DP、树形 DP
    ‑ 图论:最短路(Dijkstra / SPFA)、最小生成树、并查集
    ‑ 数学:质数筛、快速幂、GCD/LCM、组合数取模
  2. 常考数据结构
    ‑ 堆、Trie、线段树(区间最值 / 区间和)、ST 表
  3. 语言技巧
    ‑ C++17 语法糖(autotuplebitset
    ‑ Python 选手务必背熟 itertoolsbisectdeque 三板斧

三、刷题路线(12 周示例)
Week 1-2 语法热身:数组、字符串、排序 100 题
Week 3-4 搜索:DFS/BFS/回溯 50 题
Week 5-6 动态规划:背包 + 区间 DP 50 题
Week 7-8 图论:最短路 + 最小生成树 40 题
Week 9-10 数学 + 数据结构 40 题
Week 11 历年省赛真题(限时 4 h 全真模拟)
Week 12 查漏补缺,整理模板,二刷错题

四、题单 & 平台

  • 官方真题:近 5 年省赛 + 国赛(官网 PDF + 第三方题解)
  • Luogu 题单:
    ‑ P2670-P2680(蓝桥杯专题)
    ‑ P3916-P3920(国赛难度)
  • AcWing 蓝桥杯辅导课:配套 300 题,每题都有视频
  • 天梯赛 L1-L2:保持手速,训练 30 min 内切 5 题

五、每日训练节奏

  1. 30 min 复盘昨日错题
  2. 90 min 新题:先独立思考 20 min → 看题解 → 手打一遍 → 闭卷复现
  3. 30 min 模板默写:每天 2 个核心模板
  4. 周日参加一场线上模拟赛(Codeforces Div3 / AtCoder ABC)

六、考场技巧

  • 开题顺序:填空 → 签到编程 → 中档题 → 难题骗分
  • 对拍脚本:每题留 5 min 写随机数据 + 暴力对拍
  • 文件读写:C++ 用 freopen,Python 用 sys.stdin.readline
  • 时间分配:
    ‑ 填空题 8 min/题
    ‑ 基础编程 20 min/题
    ‑ 中档题 40 min/题
    ‑ 剩余时间攻难题或检查

七、错题管理
建立 mistakes.md

| 日期 | 题目 | 错误原因 | 改正要点 | 下次复习日期 |
|----|----|--------|--------|------------|

每周日统一回顾一次。

八、常见坑

  • 别一上来刷官网压轴题,会被劝退
  • 不要盲目抄板子,必须亲手敲三遍
  • 不要忽视大数、边界、取模、爆 int 这类低级错误
    `
    此路线坚持 2-3 个月,省一基本稳;冲刺国一需再加 1-2 月难题训练。
http://www.dtcms.com/a/342833.html

相关文章:

  • 完全背包(模板)
  • Mysql基础(③事务)
  • [ Servlet 服务器]
  • LTM框架Letta
  • Java项目:基于SpringBoot和VUE的在线拍卖系统(源码+数据库+文档)
  • 【leetcode】202. 快乐数
  • IKE工作过程
  • 树表转换成有层次的List列表(无限层级)
  • 北京-15k测试-入职甲方金融-上班第二天
  • Python面向对象高级编程——多重继承
  • (LeetCode 面试经典 150 题) 129. 求根节点到叶节点数字之和 (深度优先搜索dfs)
  • 麒麟系统播放图片 速度比较
  • 【Python代码】谷歌专利CSV处理函数
  • 【双极性ocl放大电路原理图】2022-11-11
  • 计算机网络:网络基础、TCP编程
  • Seaborn数据可视化实战:Seaborn基础与实践-数据可视化的艺术
  • 数据安全管理——解读银行保险机构数据安全管理办法【附全文阅读】
  • 哈希:最长连续序列
  • 如何根据团队技术能力选择最适合的PHP框架?
  • Python 标准库--python012
  • 机器学习集成算法与K-means聚类
  • Spring两个核心IoCDI(二)
  • 【信创系统】信创系统传输文件
  • 科普:Python 中颜色的格式: RGB 格式 v.s. RGBA 格式
  • Terraform vs Ansible:基础设施即代码(IaC)工具深度对比与实战指南
  • 哈尔滨服务器托管,如何实现高效稳定运行?
  • 泛型与反射
  • MySQL--MVCC
  • MPS MPQ2013AGQ-AEC1-Z MPS芯源汽车级 同步降压转换器IC 电源传感器IC
  • 【密码学】深入浅出栅栏密码:原理、流程与实现