1 条题解
-
0
自动搬运
来自洛谷,原作者为

fish_love_cat
「要毁灭世界,根本不需要邪恶。起初,那些都是不会被任何人怪罪的小小愿望。而那样的愿望却如此轻易地,和末日相连在一起。」搬运于
2025-08-24 23:17:27,当前版本为作者最后更新于2025-06-24 13:57:40,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
贪心。
把 的位置存下来,然后对于每一个 找目前还没删掉的最后的 ,对于每一个 找目前还没删掉的最前的 就行了。
要倒序删除, 则正序。
正确性大概就是注意到 的贡献权值没有什么差异,所以先后考虑顺序是任意的,然后就是要尽可能的把难以删除的先删去,于是有了删除顺序。
做完了。
#include<bits/stdc++.h> using namespace std; stack<int>A; queue<int>C; deque<int>B; int ans; int main(){ string s; cin>>s; for(int i=0;i<s.size();i++) if(s[i]=='C')C.push(i); for(int i=0;i<s.size();i++) if(s[i]=='B')B.push_back(i); for(int i=0;i<s.size();i++) if(s[i]=='A')A.push(i); while(!A.empty()&&!B.empty()){ if(A.top()<B.back())B.pop_back(),ans++; A.pop(); } while(!C.empty()&&!B.empty()){ if(C.front()>B.front())B.pop_front(),ans++; C.pop(); } cout<<ans; return 0; }
机房键盘怎么这么难用啊。
- 1
信息
- ID
- 12435
- 时间
- 3000ms
- 内存
- 1024MiB
- 难度
- 4
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者