大家好,又见面了,我是你们的朋友全栈君。
emmmmmmm 总算是考了个满分,不用以后再交PAT考场一日游入场费了T ^ T
第一次在去年秋天,被第一题狼人杀给干掉了〒▽〒,最后得了81分,第二次就是今年春季,侥幸满分通过了= =
为了总结自己踩过的坑,给后面要考的同学们提供一些微薄的帮助,遂作此文。
考场经验
一.
注意,考试的运行时的黑框,是不能使用Crtl+V进行粘贴的,但这不代表考试不能进行复制粘贴,PAT考试系统里的代码需要用Ctrl+C进行复制(右键不行),黑框的粘贴功能,是在黑框上方边界右键,然后选择编辑里面的粘贴进行,具体如下图~
在这个上面右键
就会出现下面的情况(没法截图,只能拍照了= =)
然后就可以愉快的粘贴啦~
当然还有另一种操作可以一劳永逸
依旧在菜单栏右键,单击属性
然后把 快速编辑模式 这一项前边的勾给打上,
然后,在黑框里面,选中一块文字右键就是复制,不选中文字右键就是粘贴,而且持续有效(即每次打开运行黑框都可以使用~)
二.
注意编译器问题,如果有VS,尽量不要用DEV C++,这是我第一次考试时遇到的坑,就是DEV C++在考试的时候竟然不能Debug,太坑了,第二次用的VS2013就可以,至于code block,我没怎么用过,暂时不清楚= =
三.
如果担心环境问题,去官网上面找每个考点的联系人以及联系方式,问清楚到底提供哪些编译器,因为我今年去的考点,明明PAT上面考点信息说有VS2005和VS2008,然而去了只有VS2013,就很尴尬,不同的环境确实会出现一些以前没有过的问题,比如VS2013就不能用scanf而要用scanf_s代替而vs2008上就不会出现,所以,如果想核实环境的,最好问一下联系人,他们也会很热心解答的~
四.
考试需要带的东西,草稿纸会发,但是笔要自己带(不会发笔的- -),身份证,准考证,还有人,其他的就米啥要带的啦
五.
注意考试不要打开浏览器,如果不小心误碰,立刻关掉,如果打开浏览器超过10秒,系统会立即将你驱逐的!(也就是考试提前结束了……),然而PAT每场考试都喜欢搞一题左右的来自维基百科的链接陷阱,千万别好奇瞎点进去!
六.
考试的代码,是可以存储的,(一般存储在E盘,或者老师指定的代码存储盘,以防止系统崩溃无法还原),考试结束当然也可以用U盘拷走,当然你也可以不拷,因为每次考试结束,每个考生都可以在PTA系统里绑定考号,直接查看到自己提交的代码以及排名,具体操作如下:
参加本场考试的考生,请先在“拼题A”系统注册个人账号,登录后点击用户名进入“个人中心”,将个人账号与考试账号进行绑定,方法如下:
1. 在“绑定学号”栏目下选择“学校”为“PAT联盟”;
2. 在姓名栏填入自己的姓名;
3. 在学号栏填入自己的准考证号;
4. 在验证码一栏根据自己的考试级别填入下列数字:
顶级:xxxxxx
甲级:xxxxxx
乙级:xxxxxx
5. 点击“绑定”。再进入系统应可看到本场考试的试题,并找到自己的提交代码。
流程搬运自陈越姥姥的微博,这里的XXXXXX每场考试都不一样,注意留心姥姥的微博,每次考试结束都会发的。
点击PTA系统左侧的题目集,在我的题集里面,就会有一个PAT 201X年X季考试 字样的一个题目集,点进去就能看到自己提交的代码啦~
七.
其实,AC和代码完全正确,是两个概念,如果你能确定你未通过的点的具体输入与输出,就可以进行特判,这样也能AC,只不过有点倒巧,但是,谁又说倒巧不也是一种能力呢?这只是一个例子,真正做题时还是要老老实实的做,情况紧急而且自己恰好又知道怎么倒巧的时候,再使用这种方法,技巧还有很多,比如利用while(条件)结合二分法进行测数据的等等,这个我就不多说啦,感兴趣的请自行百度~(评论区有人要这个技巧,我知道的也不多,自己整理了一下原来浙大群里的晴神讲解的机试技巧,在我的资源里,感兴趣的可以自行下载,积分是系统自己设定的我没法更改= =)
八.
考试其实入场之后,就可以开始了,这个不是统一时间开始的,而是看你点开始考试,然后系统进行倒计时的,倒计时结束,就不能再提交了,所以我推测,大概考试是一个时间段,大约1点到4点半,在考试时间内开始都可以,不过估计4点半应该会强制结束,除非考场有特殊情况发生,打印成绩大约是在5点之后,不出意外的话。
每一题都提交完成后,可以选择提前结束考试,然后就可看到分数以及排名,当然,也可以选择放在那里不动,等时间结束即可,一定要确定自己每一题都提交成功了,不确定的话,就多提交几次,虽然可能会影响排名或者面试?,但是比自己做对了没有分要舒服。
九.
考试时的状态十分重要,我觉得其实应试都是这样,不一定能发挥自己的真实实力,但是这个机制我们无法改变,所以,只能尽可能让自己状态达到最佳,因为1:30开始,所以,尽量在之前休息一下大脑,调整到最佳的状态,才能更好的应对考试。
十.
做题目的方法应该是:先认真仔细的读题,理解题目每一句话的意思,将所有的关键信息转换为自己可以理解的符号记在草稿纸上(以防止遗忘导致反复读题,英文毕竟不如中文来得快),题目里的每一句话都有其存在的意义,特别要注意加黑字体,以及有的题目还会在输出样例后写一些话,必须仔细研读,然后想清楚怎么做,再开始编程,这样才能事半功倍,比想了一半就去实现最后发现思路错了要好的多。今年的题目就充分的体现了这一思想,一定要认真审题!
十一.
关于一些模板性的算法要不要去记忆的问题,当然是需要记忆的,毕竟考试时间有限,你还在推导基础算法结构,别人都直接AC做下一题了,万一题目再难一些,做不做得完都不知道= = ,所以,像DFS,BFS,Dijkstra算法, 树的各种遍历以及建树方法,AVL树,并查集等等等……(就不一一列举了),这些都是需要记忆的,也不用一次就记住,遇到没记清的算法,自己先想着写,能写多少写多少,实在写不出来再看书,这样加深记忆,多次重复,就记住了~
十二.
PAT的赛制和ACM类似,没有罚时,而且实时反馈提交代码的运行结果,考试用的OJ和PAT官网里的刷题OJ很相似,直接在官网OJ进行练习就可以了~传送门PAT官方网站(这里可以进行,考试报名,考点查询,以及真题练习)
学习经验
这里只做个人见解,请选择性接受,因为每一场考试都不一样,不具有复制性。
一.
尽量用C++,C就不要用了(没有STL会很痛苦),python也不要用了(超时一时爽,一直超时一直爽= =),java不清楚= =,反正C++不容易超时,而且每个考点都支持,推荐使用~
二.
指导书,还是推荐晴神的算法笔记呐~具体名字《算法笔记》(作者:胡凡 曾磊),讲解很详细,虽然有的题目代码有些问题会导致某个测试点无法通过(可能是因为PAT判题数据更新的问题),但是不影响学习~
至于代码方面晴神有配套的《算法笔记 上机训练实战指南》,但是到A1107之后的就没有了,我的博客有,传送门——PAT甲级题目索引(题目+解析+AC代码),PAT乙级题目索引(题目+解析+AC代码),另外,柳神的博客也非常好,讲的十分详细,可以借鉴一下大神的解题思维~
这里仅仅是推荐,没有任何打广告的成分,只是我自己看的是这两个而已,当然每一题在网上搜索都有一堆题解,看个人喜好啦。
三.
请不要刷codeup里面的题目!!!,因为里面的题目是对应章节选择的(有的很难,有的很简单,不适合训练),但是,考试用不到= =,(实在想刷,我等等贴出来我的codeup所有的代码及解析,代码及解析已经整理完成,传送门~~~codeup《算法笔记》题目索引(题目+解析+代码))对,作为一个把所有算法笔记上推荐的codeup练习题刷完的人,我很负责任的告诉你,有些题真的很坑= =、、、直接刷PAT里面的题目就行了,还有算法笔记上也不是每一章每一节都要看都要弄懂,这里给出不需要看的章节,(再次强调,请选择性接受,我只能说PAT甲乙级目前为止没有考到以后也大概率不会考到,真的考到了请不要找我0.0):
4.7-4.7.3 随机选择算法。(后台数据不太可能随机,而且也没考到过)
5.7 扩展欧几里得算法。(千万不要看,看完以后你会怀疑人生的,而且也不会考)
5.8 组合数。(没考过,但是可以看一看,不难)
9.8 哈弗曼树。(没考过)
10.4-10.4.2~10.4.3 Bellman-Ford算法和SPFA算法以及Floyd算法(都没考过= =,但是不代表以后不会考,出现负环就会考了)
10.5 最小生成树(没考过)
10.6 拓扑排序(没考过,考过一题拓扑排序PAT 甲级 1146 Topological Order,但是不需要用这里面讲的复杂方法实现,而只是一个简单的模拟)
10.7 关键路径(鄙人觉得很难考到,大概是有生之年系列了)
11.6 DAG最长路(拓扑排序都没考,哪轮得着你??? ̄△ ̄)
12.2 KMP算法(没考过,代码还很饶人,估计也是有生之年?)
(关于第十一章动态规划专题,PAT前几年考过,最近几年就没有考过了,所以,如果实在不懂,不用太钻牛角尖,大概率不太会考吧0.0)
2020.9.8更新:
这里的不要看章节可能已经不是太准确了,看评论区也有小伙伴说今年秋季已经开始考DAG以及拓扑排序了,不好说关键路径以及 KMP会不会考,所以这个列表仅作历史记录,准备还是要更充分一些,实在没有时间再做取舍。
四.
刷题目尽量自己想,使劲想,自己动手实现,明知道自己写不对,也要自己写,编程最重要的就是要自己动手,刚看完题目就看答案的肯定记不住,而且自己的能力并没有得到实质性的提高,只有在自己通过多次的尝试对题目有了充分的认识之后,这时候再看指导才能有一种豁然开朗醍醐灌顶的畅快,并且记忆的也最深刻。
五.
做题其实有两种方式,一种是追求代码简洁方便,另一种是追求极致的运行速度,其实后一种更能学到东西,但是,前一种更适合PAT考试,如果你追求后一种,请不要忘了对前一种的训练,(比如使用读入输出优化,利用数组进行各种操作而不使用STL,这都属于追求速度,STL会慢一些,但是,它短啊!写得快啊!),毕竟,PAT考试考的是你能不能在有限的时间内AC,而不是你AC代码的运行速度有多快,不能为了追求速度而忘记了时间的消耗。可以平时追求速度,考试追求通过~~
六.
好像真没啥写的了,就写一些个人感悟吧, 本人二战浙大(当然很多人考PAT都是为了浙大嘛。。),但不幸与线又差了那么几分,大佬太多,自己应试能力太弱,这。。。。都是借口吧,关键还是自己不是十分努力的去学习,真的不能完全的投入兴趣,因为本身就不喜欢学习,所以,还是找准自己的定位,弄清楚自己到底真的想要什么,不要盲目跟风的报浙大,(不盲目的童鞋请无视= =,当然不报浙大也可以考PAT~)我觉得研究生不应该是为了就业(当然我们是基于计算机这个高薪行业的角度),兴趣最重要,能学到自己想学到的知识,结交与自己志趣相投的人,提升自己的能力,开阔自己的视野,为自己热爱的领域做出微薄或者巨大的贡献,我觉得这才是研究生的意义所在吧,但是,漫长的是努力,成败只在一瞬间,如今的我们,只能为了那一瞬的光影,坚持不懈的继续在黑暗中前行。共同加油!
后记
调剂系统开的第二天,目前已经顺利上岸上科大,选择了自己喜欢的老师以及喜欢的研究方向,虽然没能如愿浙大,但是我已经很知足了,我觉得研究生除了要有一个好的学习平台,剩下的还是要靠自己,还是再三劝告各位大佬以及萌新,选择>>>>努力,请认真评估自己的水平,理性报考。失败经验贴已写,传送门二战浙大CS失败的一些经验
还有什么不懂的或者我没有说到的请评论告诉我,我会持续增加滴~
觉得还不错的点个赞支持一下~~
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/130862.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...