2019 秋季 PAT 甲级 备考总结

在 2019/9/8 的 PAT 甲级考试中拿到了满分,考试题目的C++题解记录在这里,此处对备考过程和考试情况做一个总结。如果我的方法能帮助到碰巧点进来的有缘人那就更好了Orz

目录

一、备考内容

1.  《算法笔记》(←阅读内容目录在这里)

2. PAT 题库刷题

3. 题型总结 + 刷题笔记 (←笔记目录在这里)

二、考试情况

1. 考前准备

2. 考试过程

3. 对这次考试的总结(碎碎念,可忽略)

一、备考内容

1.  《算法笔记》

即传说中的晴神宝典,非常适合备考 PAT,书中对每个题型给出了分析,模板代码和例题。PAT有很多模板题,读这本书可以快速掌握这部分比较常规的题型,在此基础上再练习各种变体。

但晴神宝典内容较多,备考中并未全部读完,参考 经验贴 作选择阅读,有时间其实应当多读一些,但只读以下内容也可勉强过关

  • 第1章 如何使用本书
  • 第2章 C/C++快速入门
  • 第3章 入门篇(1)——入门模拟
  • 第4章 入门篇(2)——算法初步
  • 第5章 入门篇(3)——数学问题
  • 第6章 C++标准模板库(STL)介绍
  • 第7章 提高篇(1)——数据结构专题(1)
  • 第8章 提高篇(2)——搜索专题
  • 第9章 提高篇(3)——数据结构专题(2)【9.1-9.7】
  • 第10章 提高篇(4)——图算法专题【10.1-10.4.1】

在读的过程中,主体按顺序,其中:

第2章 有C++基础所以作略读,因为书中有一些语法细节的提醒,个人认为读一下还是有一定帮助的。

第5章 数学问题 因为对后面的内容没有什么影响,备考紧张就先跳过,其他内容复习差不多后再读这部分并挑选题库中的数学题进行练习。

第6章 介绍STL可以跳过,其他章节用到 STL 时有提醒应当读哪一部分,读这些即可。书之外的STL相关内容可以在刷题时候学习,官网其实介绍的挺清楚的,对用法有困惑时再检索一些博文阅读。

2. PAT 题库刷题

题库非常重要,有很多很多人刷通了题库,甚至刷了好几遍。但是其实刷不完也可勉强过关,备考中只刷了78题Orz

2019秋季PAT甲级_备考总结-LMLPHP

刷题过程是先按题型刷,然后按年份从后往前刷。虽然做的题比较少,但做过的题都做了较为详细的笔记,所以复习效果尚可。

  • 按题型刷题 方法记录在下面记笔记的部分中。
  • 按年份刷题 其实就是计时模拟,还是很有必要的。自己做的感觉和在考场还有很大区别,练习时尽量控制在两小时内完成一套题。(若是做之前没有做过的题超时也要接受Orz 复习到自己不熟的知识点是好事,要保持心态平稳)

刷题时主要参考了柳婼小姐姐的代码,她的代码非常简洁,且每题都有博文讲解自己的思路,在线使用的话用 google 搜索题目一般第一条就是她的博文。

一般每做一题,即使自己已经AC,也会去看一下她的代码,看自己的思路有没有足够清晰简洁,看自己的代码还有没有简化的空间。但有时博文介绍比较简练难以理解或是卡测试点时,会广泛阅读很多其他人的代码和思路,有些博文会写一些针对测试点的注意事项,有助于脱离卡测试点的焦虑困境。

3. 题型总结 + 刷题笔记

先整理一下自己备考过程中的笔记目录

刷题+记笔记过程:

  1. 读《算法笔记》并对重要内容作标注
  2. 对《算法笔记》中的内容做整理,主要是对题型的理解和模板代码的整理
  3. 做《算法笔记》例题,可以对着书中所给参考代码敲一遍
  4. 读柳婼小姐姐的代码,将代码中可以简化的部分进行修改,将模板代码中可以简化的部分记录到笔记中。
  5. 从题库中挑选这个类型的题目进行刷题
    • 先做较简单的,一般一个题型比较靠前的题目会相对容易些,做一两道简单题熟悉模板
    • 再做有一定变化的,总结题目在模板题基础上会从哪些方面进行变化,应当如何解决
    • 每做一道题要记录此题的思路,编码中有哪些细节问题

二、考试情况

1. 考前准备

由于没有刷完题库,所以考前浏览一遍题库,是否有考纲内自己不熟悉的题目,查看其他人的题解,思考从自己现有的知识能力如果遇到这种题的思考路径。

复习一遍自己的笔记,默背一遍模板代码。

注意不要再做没有做过的较复杂的题目了,很影响心态Orz

考前有条件的话尽量熟悉一下自己的考场。

2. 考试过程

进入考场后先检查自己机器的编译器是否好用,是否支持 C++11 等,检查黑窗能否复制粘贴,进行相关设置便于后续调试,最后建文件写头文件。

注意如果机器有问题,只要考场有位置应该都可以换机器,不影响考试。

开考后先浏览题目,看题型是否有自己完全不熟悉的题目,做好心理准备,调整自己的时间安排。

做题时可以看题目的时间要求和数据规模,如果时间要求很宽松数据点又少,那就可以试着暴力解决。

做题遇到困难可以看排行榜,如果大家都跳过某些题目说明有困难,自己也可放心先跳过。

考试最后三十分钟提交评测排队就很慢了,最后十分钟系统崩溃也不会补时。所以要尽量两个半小时内完成所有题目,保证最后三十分钟只需要调整一些小的测试点即可而非完成一道完整的题目,慌乱会影响心态。

3. 对这次考试的总结

最后在这部分做一些对这次考试的碎碎念……也算是记录一下自己考试时候的心路历程吧……

2019秋季PAT甲级_备考总结-LMLPHP

对这次题目的难易不敢多做评价,毕竟连题库都没有刷通,也不敢说准备的很充分。只是从考试过程和最后结果看,第一题真的很难Orz

考试时读完第一题只想到DFS,至今不知是否有其他好方法Orz 花了几分钟时间怀疑自己,实在是不敢信第一题就要DFSOrz 写了一部分代码后感觉这20分题实在没法直接完成,心态上很慌后面题能不能完成,就看了下排名,发现好多人过了后面题,没有人过第1题Orz 果断放下,先写后面的(捂脸)

第2、3题都是模板题,当时看到题目时还是有点高兴地,考前很怕模板题出得多了想要变花样。但因为如此,第2题看题看错了,在题解中也写了,把题目理解复杂了,考试最后一直在调这个题,测试点比较松,完全理解错题目竟然只差一个3分点,于是就只往边界点想,没想到自己题目理解有问题。最后重新读题怀疑自己理解错但也不太信题目出的这么粗暴,试探性改了下结果AC了Orz

第4题看似模板题,当时其实也理解错了……以为是看最短路径,上来就把模板先默出来,一顿操作猛如虎,一看输出傻眼了Orz 也是调了好一阵才重新回去读题,发现理解错了……幸好当时时间还算充裕,心态比较稳,很顺利在原来代码基础上想到了改的方法,顺利AC,这时候才77分,去看排名很惨Orz

回头写第1题看了时间觉得应该是暴解,就暴解了一下Orz,结果超时,再想剪枝的问题,想了一会想到应该把前面位太小后面数再大也白给的剪掉,改完提交AC

最后时间用来调第2题Orz

这次考试后面系统崩的很彻底,至少还有15分钟结束的时候就服务器错误提交不上去了,当时第2题还没调好,差3分,就一直在改。感觉这么早系统就崩应该会补时,但考场老师也并不知道系统什么时候会修好,补时会补多久,就一直在试一直在试。系统修好之后提交一下发现1000+排队评测的Orz 当时也不知道补时补多久,有点慌怕改不出来,但想了想作为一个知足常乐的人 97 也能接受,心态稳下来以后反而改好了。

这次能满分感觉有很大运气因素,再就是心态比较好。但因为备考准备不充分,考试前几天心态崩很多次,真正临考时完全随缘了反而心态好起来了。

总结就是心态很重要,备考时还是要尽量多学,提高自己的对考试的信心,心态崩塌真的很影响复习效率。等真正要上考场了就不要期望过高,压力太大,反正到了这个时候,慌也没用,大不了再来一次。希望以后面对任何考试或是任务都能在准备中多下功夫,真正考验到来时能坦然面对,就很好了。

2019秋季PAT甲级_备考总结-LMLPHP

05-11 21:47