Atcoder & codeforce 题解

前言

突然发现一个问题,自己打 \(atcoder\) 和 \(codeforces\),紧紧是打了,好像并没有积累到,即使补了题印象也很差。所以出了个专栏,对自己做大记忆恢复术。这篇巨大的题解从去年 \(11\) 月开始,包含自己已经补过的 \(abc\),\(arc\) 以及 \(cf\),可以说工程量比模拟赛总结还大,所以我打算只总结比较有启发意义的,大体就是蓝题及以上的题。

Arc165

C

\(DP\),先确定一个转移顺序,我们考虑从上到下,从左到右。转移的话需要考虑如果涂了一个下右面的网络边,那与它相邻的下面的格子和右边的格子的上左边就不能涂了,涂上左边时是同理的。画一画,我们就得到了一个很有用的性质,只有被一条从右上到左下的对角线穿过的 左上边 和 右下边 转移是相互影响的。也就是下面的图。

一句话概括就是同色的转移一下,然后不同色的块乘法原理一下。对于同色的转移,我们给每个 左上边 和 右下边 都编个号,然后发现转移就是个斐波那契数列。

D

怎么构造,不妨从左到右,我们在从左到右扫的过程中,要么把已有的线段向右延申,要么已有线段断掉,要么建新的线段,延申的时候延申最短的,考虑这样为什么是对的。

你可能在想为什么不能把两个相邻的区间,较长的变短,较短的变长,仔细考虑,发现根本不会有这种情况,如果存在,完全可以直接把两个区间合并。

Arc169

Abc354

Abc355

Abc356

Abc357

Abc358

Abc359

Abc361

Abc362

Abc363

Abc365

Abc366

Abc367

Abc369

Abc370

Abc371

Abc372

Abc373

Abc374

Abc375

Abc376

Abc378

Abc379

Abc380

Abc381

posted @ 2024-10-18 21:34  EthanYates  阅读(94)  评论(0)    收藏  举报