AtCoder Regular Contest 133
我怎么老是只会A。。这场是现场打的,只不过unrated。
这个博客园怎么变得【】了啊,改了权限就非要在园子里提示。/ll
B - Dividing Subsequence#
题意是给出两个 1~n 的排列,寻找最大的 ,
使得存在 和 ,满足:对于 ,
首先,可以 找出所有满足 的 对。
于是我们要求 和 都上升的最长子序列。
实际上是分组最长递增子序列。
借一张图。第 行是 的所有 。
然后我们可以翻转一下每一组内部(防止组内自己和自己递增),然后就可以直接求了。
C - Row Column Sums#
考虑全部填 ,然后减去一些。
为第 行减去的最小值
为第 列减去的最小值
答案是
证明:
因为有解,所以 所以
不妨列和 行和,每扫到一列,把需要减少的行都减掉(在这列能减的情况下),多的减到第一行去就行
因为是 的,所以不会出现负数。
D - Range XOR#
首先转化为 前缀和 选两个异或
再容斥一下变成 solve(R, R, V) - solve(L - 1, R, V) - solve(R, L - 1, V) + solve(L - 1, L - 1, V)
注意要L-- 因为边界问题 sum[l]^sum[l-1] 代表选择 l
然后会发现前缀和是
4x+: 0 1 2 3
: 4x 1 4x+3 0
然后分类讨论,其中(4x/4x+3)^(4y/4y+3)的情况要数位dp
有亿些细节。
作者: ACwisher
出处:https://www.cnblogs.com/zdsrs060330/p/15869048.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
见你惊鸿一面,得以窥见天光。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧