开考后发现自己穿了一个绒秋裤,考场上要被热死了,不断通过喝水降低体温。
$1min$
第一题一下想到$DP和反悔贪心$,还好学了(汗)
$1min 1s$否决掉了$DP$
$20min$
奶龙考试时遇到了一些问题:
优先队列pair<int,pair<int,int>>怎么排序啊?
试了一下。原来会自动按第一个int排序,太好了!
怎么写大根堆啊?
用存负数解决了这个问题
怎么解决排序问题啊,排完序后部门是什么怎么找啊?
用结构体解决了这个问题,还好我会写sort自定义cmp(考场上写成了bmp)
咬着牙写了一个特别构式的代码,思路是进来一个就排序,放进对应部门的优先队列,如果该部门人数大于$n/2$,则取出优先队列首元素,然后顺藤摸瓜找到他的序号,部门,然后调剂到第二大期望部门
本来写了一半如果第二个部门也满了该怎么办,结果突然发现了n/2好像不会出现第二个满的
$40min$
终于吃完了,然我来测一下。
什么叫没过样例?
$50min$
彻底怒了,开始唐诗删代码,删着删着发现好像不用这么复杂,只用存第一期望部门和第二期望部门期望值之差,最后统一反悔(姑且这么叫吧)
删了40行,改了3行过了说是
$1h$
哈哈,让我看看第二题是什么。
什么叫图论?
什么叫第一个测试点n<=1e6?
本来想写个爆搜,这下似掉了。
$1h10min$
和第三题字符串激战,中间冒出了很多想法,包括但不限于:
$KMP、trie树、字符串hash、把字符串当做27进制数进行操作……$
最终使用map写了个存押韵字符串,判掉了长度不相等的情况(听说好多巨佬没写这个),最后严肃双指针判可能押韵的起始结束位置,然后严肃判断。
最终时间复杂度$O(qL^2/4)$
但是只过了第一个样例(悲)
$3h$
写上述东西花费了大量时间,看到T4一点欲望都没有,草草写了个$O(n!)$ 8pt走人
这个思路真的要写吗
爆搜,枚举每一天可能选取的人,搜索时记录当前天数和前面未通过的人,如果这个人被吓↗哭→了↘,直接未通过加一跳过。最后判断人数是否达标,若是则加一
$3h30min$
开始检查,认真检查,给第二题写了个输出样例(
$4h$
遗憾离场
$100 + 0 + [0,25] + 8 = [108,133]$
一定要认真学图论。