agc020 题解
A
观察题,答案只和 的奇偶性有关。
B
倒推即可,讨论一下比较简单。
C
考虑一个集合 和它的补集的和等于整个序列的和,也就是说所有子集和都在总和的一半的左右均匀排布,因此只需要求出 的最小的和即可。
这个可以直接背包,用 bitset 优化一下就可以做到 。
D
首先连续段最小长度这个可以求,令 。
那么要让字典序最小,显然是前面贪心地放 个 ,一个 ,这样循环,直到后面不合法,那只能停,然后后面一定是 个 ,一个 这样放。
这个中间位置可以直接二分求。
注意网上很多都存在一个问题,如果二分中心在 的倍数位置上,后面的 的个数需要去减一,因为这个位置放 ,然后再在后面放,这个好像会出问题,但是我不太会 hack。
出成数数放模拟赛。
E
神秘题。
一个简单的暴力是直接记忆化搜索,搞出当前的状态。
然后枚举最后一个字符并在的块的大小,然后暴力搜索。
复杂度不知道,但是发现每次分成两个部分后长度减半,感觉比较优秀,写个代码递推一下会发现大概是 左右,那就能过。
官方题解分析是 ,比较问号。
F
啊这,感觉和招新一样啊。
套路地枚举每个数小数部分的大小关系,然后里面的东西就只需要考虑整数部分,状压 dp 一下,从左向右一个一个位置扫过去,看以这个点为左端点的区间是否加入,需要满足相邻两个区间有交即可。
有一些细节,要钦定一个区间放在最前面,断环成链,然后这个区间的小数部分要最小,以及这个区间长度要最长,这样最右边的区间不可能环回来后合法。
直接做复杂度 ,小卡常。
用招新的套路,只需要记录右端点最大的区间的区间的小数排名即可,这样复杂度去掉了 ,乘上个 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现