首页 > 代码库 > Codeforces Round #378 (Div. 2)

Codeforces Round #378 (Div. 2)

第一次打算rating的cf,作此文留个纪念吧。顺便提醒自己把坑填了。

A,B都是水题,没啥好说的。不过感觉自己写的好慢。

C题题干好长,看了一下D题A的人更多,于是去看D题。

开始想的是直接按照长和宽排个序,交了一发WA了之后发现可以旋转的情况根本没有考虑。

然后就想用map乱搞,对于每个面维护一个最大值。交上去还是WA。

发现电脑很坑爹地-和=分不太清楚,于是被坑了。终于把D题A掉了

以为比赛是两个小时,都准备洗洗睡了才发现时间不对。

C题想到了分块,但是构造方案感觉很麻烦,应该是贪心构造,但是处理数组下标之类的问题会很费劲。

比赛结束不久交了一发随便构造的,发现WA了,因为可能有解的情况搞成无解了。

刚刚交了一发贪心的,构造的时候一是合并之后最大的优先。

证明应该很容易,考虑最大的一项,如果它不能合并,一定无解。因为其左端,右端必与中间相等。

所以要合并的话肯定是合并最大的。当然,如果直接按照上述证明找左右端点会很麻烦。

为了减少编程复杂度,我算数组下标都直接用vector的erase删除来维护了。。

注意erase不是earse

E,F占坑

Codeforces Round #378 (Div. 2)