题目描述
给定字符串s,s只包含小写字母,请求出字典序最大的子序列。
子序列:https://en.wikipedia.org/wiki/Subsequence
字典序:https://en.wikipedia.org/wiki/Lexicographical_order
输入描述:
一行一个字符串s (1 <= |s| <= 100,000)。
输出描述:
字典序最大的子序列。
示例1
输入
复制ababba
ababba
输出
复制bbba
bbba
示例2
输入
复制abbcbccacbbcbaaba
abbcbccacbbcbaaba
输出
复制cccccbba
cccccbba
#include<bits/stdc++.h> using namespace std; string s; string ans; int main() { cin>>s; int l=s.size(); for(int i=0;i<l;i++){ while(ans.size()&&s[i]>ans.back()){ ans.pop_back(); } ans+=s[i]; } cout<<ans; return 0; }