【题解】牛客IOI周赛27-提高组
前言
在家闲着没事打牛客,发现自己被虐了。。。
好像别人的做法都很妙的样子。。。
A. 括号串
模拟题。
判断所给字符串合法等价于:
- 括号完全匹配
A
串是B
串的子序列
题意很扯淡。我最开始看到字符串长度可以比最小的小,可以删除 qwq
。
B. 虎龙斗
被虐了 qwq
。
首先想贪心做法,枚举 A
中选几个, B
中选 l-i
个,然后归并排序合并就完了 qwq
。然而这种贪心是错的,如下数据 :
显然先选下面的序列更优,然而我粗略地选了前一个就跑了导致只有 60pts
。 这个时候贪心做不出来就自闭了,然后想 dp
,发现状态设计不出来。。。
后来看到一堆 O(n^2logn)
的线段树做法,自己也不会就只会 O(n^3)
的大众做法了:
仍然考虑上述贪心,有结论:选取字典序较大的那个一定更优(假若当前位相同)。
例子:
证明也很简单。考虑不同的那一位,假设 A<B
,如果 A
在 B
前面,那么调换两个字符串位置显然不会有影响,保证 B
在 A
前面且答案更大,所以 A
只能在 B
后面,那么一定存在一个时刻两个串选了相同的前缀,而这是包含在先选 B
的决策中的。
C. 马老师
良心出题人。。。
不妨把二进制每一位 i
拆开考虑,发现就是一个裸的背包问题。
发现可以用前缀和优化,时间复杂度 O(nlogn)
。
D. 渡摆车
话说是增广路算法。。。
咕咕咕
__EOF__

本文作者:仰望星空的蚂蚁
本文链接:https://www.cnblogs.com/cqbzly/p/17530316.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/cqbzly/p/17530316.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」