记 第十七次CCF计算机软件能力认证

由于前年考的那次第一题被坑了,所以这次特别注意了前面两道简单题的效率和特殊情况,总共前两题花费大约四五十分钟,当时是比较满意的。
现在的题目还没有出来,题目细节也记得不是很清楚,只能凭借记忆回忆每道题。

第一、二题

这两个题意外的没有什么坑,做得挺顺利的。
就是第二题那个果树是循环的,为了少写一个判断,第n棵果树的信息是存在下标为0的元素里,这样判断连续三棵树的时候就可以方便一点,直接全部mod n

第三题

因为考过一次,真心觉得每一次的第三题题意都比较复杂、代码量都是比较大大那种,性价比并不是很高,所以就是看了一眼就没管了。感觉下一次再考,不是实在时间很充裕或者后面点都不会,不会考虑做第三题的。

第四题

很清楚的一道模拟题,我当时没有注意到时间限制写的是5 s,应该直接维护一个有序商品序列可以过大部分数据。我很amazing地手写一个大顶堆,最后还没写完就时间到了。
查询时,要求输出score最大的k种商品,且输出中对每个类型商品的最大值做出了限制。这里的处理方法就是

  1. 取对每个类型取前min{该类型商品总数,该类型的输出限制}个score大的商品,放在一个list,按照score进行排序,取前k个商品(可能取不满k个)。
  2. 按照题目要求的输出顺序,对去取出的商品,再进行一次排序

第五题

一道有点迷的图论题啊。想了快半个小时没得思路,感觉要是没想这个可能我第四题就可以写完了吧TAT
一个有n-1条边的连通图,给出几个关键点,和一个k,要求输出关键点集中的k个关键点,使得这k个点两两之间的距离之和是最小的。好吧,说完了我也不知道思路,蹲一波大佬的题解,好好学习。

总之,感觉ccf这次比我上次考得要难不少,没有那种算法模板题了。下次要努力上300啊!

你可能感兴趣的:(CCF,CCF)