使用两个数据结构;
使用set去重;
使用queue实现数据从右向左;
即可 <输入的虽然是数字,但是我们可以以字符串的形式处理>
#include<iostream>
#include<algorithm>
#include<string>
#include<set>
#include<deque>
#include<map>
using namespace std;
int main() {
deque<char> q;
set<char> s;
string a;
cin >> a;
for (int i = a.length()-1; i >= 0; i--)
{
if (s.count(a.at(i)) < 1)
{
s.insert(a.at(i));
q.push_back(a.at(i));
}
}
while (!q.empty())
{
cout << q.front();
q.pop_front();
}
system("pause");
return 0;
}
京公网安备 11010502036488号