华为杯总结

概述


  • 这次题目总体来说感觉比较水,但是单刷难免会出现各种奇葩情况。
  • 为了多抢点钱,也是没有办法的事情。好在当前情况还在可控范围内。
  • 虽然被坑题给坑死了,但是整体来说这次代码写的还是很稳定的。

A题


  • 上来第一道题就是我最擅长的模拟,但是这次很可惜阴沟里翻船了。
  • 题目本身就描述不清,再加上坑爹的思维定势,看到样例都是大写16进制,就以为后台也是这样。
  • 结果在这里卡了差不多两个小时,最后还是没过。就那么一遍一遍想自己到底哪个细节没有考虑到!
  • 比赛结束后到后台看样例,尼玛就那么几行啊!!!就TMD错在没有想到有小写字母上了啊!!!
  • 而且我记得做题的时候还犹豫了一下是不是要处理一下小写,但是不知道为什么居然会奇葩地懒得写了。
  • 赛后回想一下,在这种不计罚时的比赛里面,我知道那么多手段可以试探后台数据,TMD就是没想到去试试。
  • 唉,实在是郁闷死了!

B题


  • 先做的是这道题,之前训练赛搞过一道类似的更复杂的,所以直接1A砍下。

C题


  • 感觉上这题应该有比较快的写法,但是想不出来(贪心的话不会证明正确性)。
  • 所以直接上了个背包试图装满一半的容量,糙快猛无压力。
  • 装不满的话直接遍历一遍最小差值就可以了,时间复杂度应该没问题。
  • 第一次交的太早了没有注意输出的时候有笔误,要不然应该就能1A。

D题


  • 基本能看出是DP,然后就不会做了……

E题


  • 本来在搞D题,想不出来状态转移方程,看这题有人过了,于是就开始想。
  • 这应该是对于每只兔子,查询速度比它快但是位置比它早的乌龟的数量,求和就可以。
  • 看一下数据规模,显然查询得是logn的复杂度,线段树无误,尼玛没带模版。
  • 后来看了一下正确的提交,用的是C语言,十有八九是大一的。
  • 但是线段树当场写的话我都写不好大一的怎么可能搞出来,于是明白了——数…据…弱!!!
  • 直接排序后枚举,糙快猛搞定,不算那个意外编译错误的话1A拿下。
  • 另外看来容器的begin、end方法返回的迭代器是带有const属性的,排序函数得注意一下类型匹配。
  • 不然的话像g++这样类型检查比较严格的编译器对此就会报错……
comments powered by Disqus
Published:
2013-04-22
分类:
Tag: