我的编程历程
2016年9月,我荣幸地加入了龙实715重点班的大家庭。
2017年初,学校宣布开展兴趣班培训,我再三犹豫后,选择了加入信息学奥赛班,从此开启了我编程的道路。
带领我们开启编程大门的老师是钟杨。老钟人很好,在讲解代码的时候很细心,不放过任何细节,常常一份代码讲一节课。但也就是因为这样,我们进步的速度很慢,班上出现了两种情况:大部分同学认真地听老师讲解并记笔记,另一部分同学在课上自学、看书,甚至玩游戏。也就是这一部分同学,成为了现在信竞的尖子生。
他们就是lmh和ll。
他们的技术突飞猛进,在初一就参加了STOI、GDOI比赛,虽然最终以爆零告终。他们没有放弃,初二第一学期,他们参加了NOIP普及组,并分别获得了一、二等奖。
而我,是从初一暑假才开始认真学习C++的。在那个暑假,我左手拿着白书《信息学奥赛一本通》,右手抱着电脑,一步一步从零开始。
我刚开始学,会的东西不多:
常量与变量
输入、输出语句
赋值语句
表达式
if判断语句
for、while循环语句
数组
函数
结构体
至于白书第一部分的最后一章:指针,我看得一头雾水,便放弃了。
学完这些后,我就开始写题。刚开始写的题是open judge的,都是一些简单的题,比如:
Hello,world!
A+B problem
奇偶数判断
淘淘买雪糕
分离三位整数的各个数位
与圆有关的计算
奇数求和
苹果和虫子2
还有很多类似的水题,但除了这些水题,再难的的也不会了。后来我又写洛谷上的题,也只会写类似的水题。
于是,我又拿起书本开始学习算法:
高精度
排序(冒泡、插入)
学完这两个算法,我已经绞尽脑汁,但投入实际写题后,我才发现算法的重要性。
A+B problem(高精)
高精度减法
明明的随机数
分数线划定
这些题写起来得心应手,于是更加坚定了我学习算法的决心。
DFS
递归
递推
贪心
动态规划
我用了两个月的时间,理解了这些基本算法。从此,我的题量大大增加,我从一个只会写入门难度题的菜鸟变成一个会写pj-的菜鸟。
魔法照片
奖学金
排队接水
纪念品分组
八皇后
迷宫
采药
开心的金明
这些题具有很大代表性,使我更扎实了基本算法。
我买了紫书和蓝书,即刘汝佳写的《算法竞赛入门经典》,打算开始向更深一层迈进,特别是数据结构。
栈
队列
优先队列
链表
树与二叉树
二叉堆
学习这些用了一个月的时间,我开始写BFS和二叉堆的题。
填涂颜色
细胞
01迷宫(只得了60分)
离开中山路
合并果子
瑞瑞的木板
合并序列
这些题使我达到了今天的水平,这对于初一时的我,是怎么也没想到的,我对自己自豪,也愿意继续努力。
现在的我,正在学二叉搜索树,准备向更难的树形数据结构进发。开此博客,为了更好地学习。相信今年,我能拿下更好的成绩。