SRM518 Div1 Easy - LargestSubsequence

問題

文字列sの連続とは限らない部分文字列の中で辞書順最大のものを求める

実装

sを後ろから見ていって、今まで見た中で最大の文字以上の文字を見つけるたびに追加していき、最後に反転

class LargestSubsequence {
	public:
	string getLargest(string s) {
		string t;
		char mx = '@';
		for (int i=s.size()-1; i>=0; --i) if (mx<=s[i]) mx = s[i], t.push_back(s[i]);
		reverse(all(t));
		return t;
	}
};