• 14 : 30 ~ 14 : 42:看完了所有题,目测难度 A B C D。
  • 14 : 42 ~ 14 : 50:写完了 A,但是没过样例。
  • 14 : 50 ~ 14 : 57:看错题了,原来合并不会改变水晶的权值,那么应该是一个排序贪心,只需要枚举右端点二分扩展左边即可。
  • 14 : 57 ~ 15 : 05:测完了大样例,挂上了对拍。
  • 15 : 05 ~ 15 : 33:写完了第一个版本,复杂度是 \(O(d ^ 2(Q + \sum k_i) + n ^ 3)\)。
  • 15 : 33 ~ 16 : 04:浅算了一下复杂度,自己造了极限数据是 \(4s\),很有可能被卡常。花了一点时间卡到了 \(O(d ^ 2Q + d \sum k_i + n ^ 3)\),极限数据是 \(0.6s\)。
  • 16 : 04 ~ 16 : 30:感觉会了 C,写了两个假做法都被小数据卡了。
  • 16 : 30 ~ 16 : 45:上了个厕所冷静了一下,回来仔细观察了题目。考察如何 \(O(1)\) 判断一个区间,只需要左右夹一下,下标集合当且仅当有一位差异且差异元素之差为 \(1\) 则是一个合法区间。
  • 16 : 45 ~ 17 : 05:只需要枚举步数和左端点,对右端点扫描线即可,维护最大次大值,可以 \(O(n ^ 2 \log n)\)。
  • 17 : 05 ~ 17 : 24:步数是不是可以不用枚举啊,因为从左往右步数是单调的,于是可以 \(O(n \log n)\) 扫描线了,感觉 \(O(n ^ 2)\) 比较难写于是先写的 \(O(n ^ 3)\) 作为对拍。
  • 17 : 24 ~ 17 : 50:写出来了但是一直在第四个大样例错了三个点。
  • 17 : 50 ~ 18 : 03:上了个厕所,发现 D 还没动的,遂果断放弃 C,去写 D 的暴力。
  • 18 : 03 ~ 18 : 26:写完了 D 的 \(15\) 分暴力,把 A 的对拍部分删了。