Skip to content

Latest commit

 

History

History
46 lines (22 loc) · 4.45 KB

2018.12.9 PAT 甲级冬考小结.md

File metadata and controls

46 lines (22 loc) · 4.45 KB

2018.12.9 PAT 甲级冬考小结

总的来说并不满意。题目都会。但是没有拿到该拿的全部分数。

  • 第一题,在长度为L的数字字符串中寻找第一个长度为k的素数子串。

    题目难度不大,但是背景还算新颖?不同于以往一眼看破的水题,花了几分钟提取本质,一个2分测试点没过。为了节省时间直接往后,打算回头解决。此时过去了21分钟左右。

  • 第二题,老套的模拟查询题。这种题型之前做的很熟练也自认为掌握了,所以自信满满地开始读题。

    前两种查询方式很老套,但是第三种根据日期输出考点编号及考点人数让我混乱了。我对这种题目的处理方式一般是在接收数据时就存储到数据结构里。但是考点的状态在数据接收完之前是不固定的,意味着要后期去提取。于是想到遍历第二个map数组即<考点id, 考点数据>。但是又不对,因为第三种查询方式需要日期作为键,而一个考点又可以被分为多个日期。仿佛要建立map<日期,map<某日期的考点, 数据> >这样的数据结构?当时心想是不是自己想的太复杂了。

    接下来犯了一个大失误:我决定忽略第三种查询方式,先实现前两种。前面思考的太混乱,导致写的慢,大概花了四十来分钟。再回头思考第三种,还是没有思路,此时已经过去了一个小时。看着耗了这么多时间的“老套题”完全没有产出成果,心态有点崩(之前做这种题都是一遍AC)。

    缓了缓,保存代码。打起精神先跳过,看下一道。

    (之前做这种题都会把IO说明和思路写在头注释里,百发百中,只要写了都是一遍AC,这次没写也是大失误

    为啥没写呢。。因为屏幕太辣眼睛里,不想多看一眼。。还因为当时是开着网页 然后开dev c++小窗在上面 对着题目写 但是!小窗太小了!写了注释的话即使要看也要往上拉很长,所以干脆不写了。。但是!!你写在头注释里了不就不用回头看题了嘛!! 以及最后半小时才意识到可以把dev c++的侧栏隐藏视野扩大了好多,之前写的超级憋屈难怪那么烦躁。。)

  • 第三题,常规的图题。处于同一条边上的顶点不能是同一个颜色,给定每个顶点颜色,判断是否合法。

    第一遍读完潜意识就觉得这题简单。但被前一题影响到,思路花了十来分钟才成型,在代码实现过程中对混乱的地方做了修订。其实总结起来很简单,读取边时用邻接表存储顶点u的邻接端点,读入给定颜色序列的时候用map标记顶点和对应颜色。接下来只要遍历每个节点的邻接点,从map得到两个顶点的颜色,如果相等就是非法,同时用哈希表标记不同颜色个数即可。

    这么简单的思路,当时真是被前一题冲昏了头脑,一度想弃考算了。还好咬咬牙坚持了下来,一个2分测试点没过。没时间管,看下一题。此时还剩一个小时。

  • 第四题,输出数组形态树的路径遍历,右路径先于左路径,并判断大小堆。

    拿到也是有自信的。遍历嘛,dfs递归,右路径先于左路径,就把2*roo+1放在2*root前面,判断大小堆更简单了,直接调用algorithm的is_heap()函数。

    刷刷写完代码,诡异的事情出现了,样例输出404???很奇怪的输出,以为是第一题的编译结果干扰到这题了就在dev c++里叉掉了第一题的代码,重新编译。还是404的输出。其他样例输出也不对。懵逼。

    对于遍历,不递归还真不会做了。。但是递归哪里写错了呢?调不出来。。对递归的使用还是不够熟练啊QAQ 之前都是看的多,但是自己写的很少。得加强训练。

    至于函数,不知道是什么问题,先占坑。

  • 硬件上的问题。

    dev c++的配色方案着实辣眼睛,尤其是那个荧光色加亮光标整行,在白底上快要闪瞎我了,荧光色配黑底就看不清代码了,换高亮颜色嘛,深的看不清,浅的就是荧光色。。在敲括号的时候,鲜红色的括号配上荧光色。。。瞎了。。。得摸索一套配色方案出来,下次换上。。

    PAT题目样例输入不能复制( ・᷄ὢ・᷅ )?第二题的输入数据,手打会shi吧。。有什么办法呢~谁让你不能一遍AC~

三月,再战!目标是满分💯!!