Winter Camp Day1

好多分类讨论诶!

Posted by mental2008 on January 20, 2019

Day1 实录

早上参加了 camp 的开幕式,也见到了传说中的 wls! 说句实话,我是真心佩服 wls 对于算法竞赛的热爱和无私的付出,没有他也没有这一次的 wannafly winter camp。希望有一天,自己也能为了自己热爱的事业献出自己的一切吧。

下午就是 Day1 的第一次练习赛了,Div2 和 Div1 题目内容一致,不过部分题目的数据范围有所削弱。

开场读的第一题是 B 题,看了一眼糖果的数据范围是 1018,棋盘的大小也只有 10×10,就口胡了一个记忆化搜索的做法。记 $dp[i][j][k]$ 为 ($i$,$j$) 位置获得 $k$ 个糖果所需要的最小时间,用优先队列写了一个 BFS 就过了。状态数有 101800,转移的复杂度为 10,总时间复杂度是 $O(n*m*C*maxT)$

下一题开了 F,看到题目描述就觉得是一道最短路的题目。只需要在每一次 $u$->$v$ 松弛的时候,计算一下 $v$ 是否需要将高度降低到 $h[1]+k$,将降低高度的代价计算进去即可。不过第一次提交的时候 WA 了…想了很久没想出来,最后发现自己计算的时候用的都是 long long,结果中间变量的类型却是 int…改正之后就 AC 了= =

接着队友就口胡出了 J 题 $n^2$ 的做法,枚举一下 wls 的宝物数量,将超出 wls 宝物数的居民从小到大买走宝物至符合要求,再将剩余的居民宝物数从小到大补齐即可。这题的数据一开始锅了QvQ帮队友 debug 了好久也没调过,以为是哪里有错没看出来,数据修正了之后就 A 了。这题用的时间久了点,有点小自闭…

最后看 Div2 其他题都过的比较少,就去看 C 了,前边一直在想构造的做法,不过奇偶的情况一直没讨论清楚…很惊讶队友随手写了个随机拆分就过了…过了之后又重新想了想奇偶的情况,再分类讨论了一下似乎就可以了!这种分类讨论的题目还是写的太少,每次做都容易想不太清楚…

其他题就没怎么读了,剩余的时间都在看 G 了,口胡了一下做法,不过卡在了不知道怎么处理一个矩形内的情况…赛后补题的时候再重新思考思考