cometoj-14
万年卡 E 题系列。
这次 A
竟然不是字符串,开始我已经准备了字符串的输入输出等一堆东西结果发现没卵用
花 1min49 AC ,好像在这之前已经有 12 个人 A 了。
B 第一眼看上去是个 DP
,再看一眼(看成最小值最大)以为是二分,发现是让最大值最大而且还只有三个段后。。。
大力分类讨论!
果然是个分类讨论就巨多细节,判无解判边界判大小 blabla ,结果交 WA
了两发,在 16min AC 。
( B 最快的 6min 就 A 了,16min 这时候 C 的一血都被拿了的说)
C
维护一个序列?结果每次需要把所有序列复制一份并对复制的那一部分进行修改?
一脸懵逼.jpg
(然而水群的时候大佬们都说这题怎么怎么显然,和什么什么题一模一样)
还好看清楚了数据范围只有 2000
,就去想单独考虑序列上每个点,这样就很好维护,
一个点每次复制就是权值翻倍,复制的位置被修改就是权值加上 修改值 乘
序列数量。
好像花了和 B 差不多的时间,在 33min AC 。
D
题感觉很神,乍一看什么可追溯化数据结构,可一想哪有对线段树可追溯化的,还是追溯一段操作区间。
然后就感觉很不可做,但看了 E
发现是个图论更不可做还是头铁硬肝。
发现区间覆盖的性质还是很优秀的,然后 yy 了一个扫描线 + set +
树状数组的做法,
树状数组维护每个操作对当前扫描线上的询问的影响,
然后 set
维护一个蛇皮东西,扫描线扫过的操作执行后的区间覆盖长什么样子,
每次区间覆盖就可以直接在 set 上 lower_bound 到位置再换掉旧的覆盖。
(后来听人讲这就是 odt 。。。)
在 81min 打完过了样例,仔细检查了检查,一交,WA 了。
懵逼,静态差错无果,对拍无果,查了半个小时,实在没发现什么错,
还以为我题目读错了,读了四五遍题感觉实在是没有什么坑,
抱着自闭的心态再交了一发, woc AC 了。
一脸懵逼.jpg
我感觉我什么地方都没改啊怎么突然从 WA 到 AC 啊!!!
比完后查了查,发现是这样一句话:
1 | fprintf(stderr, "%d\n", i); |
神 tm 我输出到标准错误流竟然就 WA 了?!
后面还 test 了一波,发现在 cometoj 上只要有标准错误流就会 WA/RE 。
引以为戒,祭奠为此逝去的半个小时。
最后就在整个后半场卡 E 了,回头看了看每场 cometoj 常规赛都卡 E ,能 A
掉 ABCD ,
发现唯一一次拿到奖是因为那次只有 8 个人 A 掉了 D 。。
写总结好累啊,以后打比赛就不写了吧。。