Codeforces Educational Round
代码部队教育回合
Edu 174E - A, B, AB and BA(2300)#
本题旨在考察选手的分讨能力和耐心。
容易想到,由于不能有相邻相同,所以在 AA
和 BB
中间断开,将序列分为四种:
-
ABABAB...B
-
BABABA...A
-
ABABA...A
-
BABAB...B
到这里就需要考虑怎样贪心使用每一种组,使其更优了。直接考虑其实并不容易,我在这里使用了错误的贪心策略。
正确的策略可以考虑:单个
现在有了 AB
和 BA
这种分组方式,就可以将一些东西合并。一次合并之后 A
能减少 1
,B
也能减少 1
。
对于第三种和第四种,都是好的,因为这两种无论如何都能合并成 AB
或 BA
,且合并完之后仍然形式不变。但是对于第一种和第二种,例如第一种,假如其长度为 AB
,能拼成 BA
,就只能拼成 AB
,那么就会有很多短的串中出现 BA
,这不优。所以将第一种串排序,先填小的串,使得尽可能多个串不被浪费。第二种串同理。填完之后再考虑第三种和第四种,最后判断一下剩下的单独 A
的个数和单独 B
的个数是否满足
Edu 173E - Matrix Transformation(2300)#
没多久就想到了,但是一直 WA on Test 2,感觉我的方法没问题,为啥一直过不了?看了题解发现和题解做法不同,题解做法我曾经考虑过,但是感觉还是比较麻烦。然后拷了题解代码对拍,找不到差异。最后突然发现是判断的时候,a 数组没有取出某一位。
首先显然拆位。正着做不好做,将这个过程倒过来。最后一次操作形如将某一行全部赋为 0 或是将某一列全部赋为 1。那么如果 b 矩阵中某一行全部为 0,就可以最后进行将这行全部赋为 0 的操作,那么之前这一行的值是什么就无所谓了。不妨将这一行的值视为 -1,即可以是 0 也可以是 1,再不断找全为 0 的行或全为 1 的列,最后再判断与 a 矩阵是否相同。正确性显然。
Edu 170E - Card Game(2200)#
怎么感觉这么水,还做了半个小时,速度真是慢。
直接 DP。由于玩家 A 必须所有牌都强于玩家 B,而除了第一行以外每一行的牌只能强于本行前面的,所以 2 到
然后再用一个背包将单行的
反正
作者:Terminator-Line
出处:https://www.cnblogs.com/Terminator-Line/p/18739934
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!