闲话11.9
明天到底有没有模拟赛🤔。
今天好像依旧是一整天无聊的写题😨😨😨。那就摆喽!
今天晚上摆的有点厉害啊🤗,一晚上一道题也没写,爽!🥰。同时还见识到了隔壁高一的在机房用乒乓球拍打羽毛球的奇观🥰🥰。
为什么 cjwdxfblzs 上午认爹了🤔。
cjwdxfblzs: 是 爹
上午 jimmy 又给我们发表了大篇幅演讲😓。不过有用的事情其实也就 noip 别被 csp 影响了🤔,然后就开始讲生物(?,讲了一堆什么多巴胺内啡肽啥的🥰,而且还准备了个 pdf😏。但是那 pdf 里面怎么最重要的地方(爱情)咋 jimmy 没提几嘴啊🤔。
妈的,反正我现在也没有😭😭。但是我有恋恋🥰🥰🥰
上午颓 lyq 学长的博客颓了一个小时,收获颇丰🥰🥰🥰。
今天闲话内容明显量没有昨天大啊😥😥😥。今天太无聊了吗。
下午打球的时候遇到了进校巡查校园,身边围了一大坨老师🤣🤣🤣。然后他们好像就围着存真沟看😅。期间有个老师还过来问我们在上啥课😓,幸好当时计划生基本都下来了😏。然后糊弄几句就把那个人给弄走了🤣🤣🤣。
晚上 sbf 的语录:
得知明天没模拟赛而是做题单
sbf:啊?S2 没了?
但是 jimmy 后来又说明天有模拟赛😓。
不是 jimmy 现在留了俩题单,一个题单里面组成情况:6 个 *3000 的 ds。另外一个是 2 个 *3200,两个 *3100 和一个 *3000。不太好评价😓。虽然但是感觉我吐槽的可能有些过了🤔,毕竟 jimmy 留的简单了我们也骂留的难了我们也骂是不是不太好😥😥😥。
晚上没你话我草,没多少人想玩😥,我就去看 R&M 了🥰🥰。不得不说看的是真他妈爽啊。
bingxin: 恶意揣测西西弗想法,扰乱竞赛秩序,造成恶劣影响,引发社会恐慌,依照有关规定禁赛三年。
推歌:Everlasting -CielArc
求求了哥哥姐姐们我真的没多少车万的同人曲可推了求求能不能推荐点😭😭😭。
AGC027E
这题咋我这两天见了两三遍🤔。
把 \(a\) 的权值设为 \(1\),\(b\) 的权值设为 \(2\),那么每次操作在 \(\bmod 3\) 意义下权值是不会改变的。
同时也可以用数学归纳法证明:除去 \(\texttt{ababab}\cdots\) 这种情况,当一段区间的权值为 \(1\) 时可以变为 \(a\),权值为 \(2\) 时可以变为 \(b\)。
接下来考虑如何计数。为了避免算重,我们可以规定让 \(t\) 贪心的选择最前面的一段区间。具体的,设 \(f_i\) 为 \(t\) 贪心的匹配到了第 \(i\) 个位置的方案。转移即可考虑找到后面第一段权值为 \(1\) 或 \(2\) 的区间。这里不用考虑 \(a, b\) 交错的情况,因为是贪心的选择,那么我们一定会选择最开头的那一个字符,又因为 \(ababab\cdots\) 的权值为 \(0\),只有出现重复字符时才会改变权值,因此这么选择是正确的。
再考虑如何统计答案。这里给出结论:当 \([i+1,n]\) 这段区间的权值为 \(0\) 且字符串不为 \(a, b\) 相间时,\([i+1, n]\) 可以被缩掉。可以考虑画图理解:
首先如果 \([i+1, n]\) 不为 \(a, b\) 相间,那么w可以让它和前面的一个字符合并起来。根据我们上面的结论(权值对应字符),它不会改变前一个字符,同时还会让自己这段消失。
而当后面那一段为 \(a,b\) 相间时,如果最后一个字符是由一段区间缩成的,那么显然可以带上最后一段一块缩。否则这个字符为一个单个字符,那么由于最后一段权值为 \(0\) 且不与前面的字符相同,可以得到字符串最后一个字符与该字符相同。那么就直接把这一段权值为 \(0\) 的区间前移,最后一个字符改到最后即可。至于前移的区间就可以交给前面的字符了,由于字符串不为 \(a,b\) 相间,那么前面一定会得到一种终止情况。
时间复杂度 \(O(n)\)。
![](https://img2023.cnblogs.com/blog/3044444/202311/3044444-20231109212600672-1563379332.jpg)