Codeforces Round #545 (Div. 2) 掉分记

Posted xray-luogu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #545 (Div. 2) 掉分记相关的知识,希望对你有一定的参考价值。

每次CF后,我的rating下降,掉分让我悲痛欲绝

                    ——题记


 

### 前言

这次 CF 时间可谓是极好的,17:05 开始,时长 2h 30min。

4:40 回到家,开电脑。

在看了一会书后,比赛开始了。

 


### 正文

首先,第一个掉分的 flag 出现了!

卡,卡,卡!

CF 又双叒叕卡了!

1分钟过去了……

2分钟过去了……

3分钟过去了……

Dashboard 一直打不开。。

当时间已经接近 17:10 分的时候,我终于打开了 A 题。。

然而,这还并不是我掉分的所有原因。

先迅速浏览了一遍 A~C 题,然后?

“woc这 B 和 C 是题?”

于是就~~愉快地~~开 A 题去了。

A 题链接:https://codeforces.com/contest/1138/problem/A

先看数据范围,

$ n le 1e5 $,$ O(n) or O(nlogn) $?”

然后莫名想到 $ NOIP2018D1T1 $,心里很恐慌。。

题目大意就是给你一段只含有 1 和 2 的序列,让你求出一段长度为偶数的序列,使其平均分成两段后,每一段只含有一种数字。求序列最长是多少。

先想到的是 $ O(n^3) $ 的暴力,于是就有了对拍的程序。

然后开始大力猜正解:

“欸,设这段序列中最长连续的 1 为 len1,最长连续的 2 为 len2,好像 $ ans = min(len1, len2) imes 2 $!”

三个样例都是这样,于是,在我尚未做出证明的情况下,我便直接打起了代码!

这,就是我掉分的第二个 flag。

劈里啪啦打完代码,测样例,发现一个小错误,改掉,于是就过了三个样例。

SUBMIT CODE->cc->cv->Submit->Wrong answer on pretest 7

心态彻底爆炸

“啥啥啥 WA 了?”

“不会吧,有可能是细节问题,再打一遍”

于是又重新按照思路敲了一遍,过了样例,提交

Wrong answer on pretest 7

这是个假算法?

???

看来是假算法了,凉了

此时,比赛已经进行了 43min 了,我一共提交了 2 次,全部 WA #7,也就是说,我已经承担着 1h 的罚时了。

这,是我掉分的第三个 flag。如果我只罚时一次,那我也不会掉分。

无奈之下,我只能用起对拍,随机生成 $ n le 10 $ 的数据,拍 10w 组。

没过一会,我就发现了一组 hack 数据!

input:

7

2 2 2 1 2 1 1 1

答案应为 2,但是我的程序却输出了 6!

hack!

此时我已经大概猜出了正解了,不是什么规律题,直接 $ O(n) $ 模拟!

可是,在慌乱之下,我的键盘不知为何,好像不听我的命令了一样。空格键必须要用很大的劲才可以敲出来。

以上是关于Codeforces Round #545 (Div. 2) 掉分记的主要内容,如果未能解决你的问题,请参考以下文章

Codeforces Round #545 Div. 1自闭记

Codeforces Round #545 (Div. 2) 掉分记

Codeforces Round #545 (Div. 2)D(KMP,最长公共前后缀,贪心)

Codeforces Round #545 (Div. 2)A. Sushi for Two

「日常训练」Woodcutters(Codeforces Round 303 Div.2 C)

Codeforces Round #436 E. Fire(背包dp+输出路径)