CodeForces 比赛总结
账号 1:Eason_OIer,
账号 2:Eason__cyx,
记录 Div.1+2 / Div. 2 的题解。
Codeforces Round 997 (Div. 2)
惨败,rk7283,1647-95=1552,Expert -> Specialist。呜呜我的蓝名(
A. Shape Perimeter
大概是最近的 Div.2 中算比较困难的一道?
不太好说思路,画了个图:
那么直接算就行了。时间复杂度
B. Find the Permutation
唐诗题,题意很史。
首先你会发现如果
首先从
那么就可以得到整个排列了。时间复杂度
C. Palindromic Subsequences
这种题都没有观察出来???赛时糖丸了,赛后立刻出做法。
考虑构造
-D. Unique Median
妙妙题,参考了官方题解。
考虑一个子段
接下来考虑怎么计数。因为
代码还没写,咕咕咕。
CodeForces Round 999 (Div. 1+2)
又掉分了 /ll /ll /ll 赛时过了 ABD。
A. Kevin and Arithmetic
分讨。如果这个数组中没有偶数,那么第一次不能得分,后面都可以。那么答案就是
如果有偶数,假设有
做完了。时间复杂度
B. Kevin and Geometry
简单题。
假设等腰梯形上底为
时间复杂度
C. Kevin and Puzzle
赛时没有瞪出来怎么 dp()
直接设
-
如果第
个人是诚实的,那么有 ,此时应该有 。 -
否则,因为骗子不会相邻,那么第
个人一定是诚实的,此时应该有 ,有 。
最终答案就是
时间复杂度
D. Kevin and Numbers
很有趣的题。
正着维护合并不太好做,所以我们反着想,考虑如何将
由于合并两个数
接下来考虑怎么拆。对于
上面过程涉及的最大值和删除操作,可以用一个优先队列维护 map
维护
CodeForces Round 1000 (Div. 2)
A. Minimal Coprime
笨蛋题。。。
你不难发现只有
时间复杂度
B. Subsequence Update
困难题。
考虑到如果你的子序列中包含了
时间复杂度
CodeForces Round 1001 (Div. 1+2)
A. String
不难发现每次操作都会减少一个 1
。那么数一下 1
的个数就是答案。单组时间复杂度
B. Clockwork
/bx /bx /bx
考虑对于一个位置
时间复杂度
-C. Cirno and Operations
不难发现如果先反转再差分,和先差分再反转的区别就是总和取了个反。那么任意的操作序列都可以看成先做了一些差分,然后反转,然后取一些反。那么我们可以直接枚举做了几次差分,然后取绝对值,找最大值即可。时间复杂度
注意不做差分是不能取反的。
CodeForces Round 1002 (Div. 2)
只过了一题,耻辱!!!
A. Milya and Two Arrays
因为每个元素都至少有两个,所以我们只要找到两个数组中各有两个不一样的元素即可,或者如果一个数组全是一样的,另一个数组有三种以上不同的元素也行。时间复杂度
CodeForces Round 1004 (Div. 1+2)
上分啦。
A. Adjacent Digit Sums
讨论两种情况:
-
第一种,
的个位数 。那么显然有 。 -
第二种:
的个位数 。那么 之后个位变 ,十位加一,这样就有 。但是十位可能也是 ,观察可以得到不管如何进位 一定是 的倍数。
这样就做完了。时间复杂度
B. Two Large Bags
感觉就乱贪心啊。
考虑从小到大枚举当前是哪个数。然后:
-
如果当前这个数出现的个数为偶数,那么留下两个这个数,剩下的全部变成这个数
。 -
如果当前这个数出现的个数为奇数,且前面已经有某个数是奇数,那么判断这两个数之间是否所有数都可以出现,如果可以,那么这两个奇数都可以变成偶数。
如此贪心,整个过程结束后判断是否所有数的出现个数都是偶数个即可。提交记录
C. Devyatkino
不会证,啊吧啊吧。
你观察样例发现每次加的
D. Object Identification
牛的,这场 Div. 2D = Div. 1A,然后这题直接硬控 jiangly 50 分钟。/bx
首先判断这个 ! k k+1
(注意
那么如果 1 p1 p2
和 1 p2 p1
,得到两个结果
那么就做完了。时间复杂度
CodeForces Round 1005 (Div. 2)
A. Brogramming Contest
代码还没补。
首先我们在整个字符串前面补一个 0
。那么每次操作就是找到最右边的形如 01
的这个位置,然后把这个 1
后面的全部挪到
Educational Codeforces Round 174 (Rated for Div. 2)
没打,补题。
A. Was there an Array?
考虑什么时候无解。不难发现如果有三个连续的 1 0 1
的时候,第一个应当和第二个相等,第三个也应该和第三个相等,那么,这三个都应该相等。那么第二个就应该是
时间复杂度
B. Set of Strangers
个人觉得比 A 好想。
观察得到对于相同的数来说,至多需要两次就可以将他们全部变成另一个数。又发现
注意,
C. Beautiful Sequence
困难题。一个重要的性质是
然后?你会发现这里说的一个数前面有数比他大有点怪,仔细考虑一下。假设
(其实本来是
那么做完了。时间复杂度
本文作者:_幸运草
本文链接:https://www.cnblogs.com/eason-oier/p/18721793
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现