#include <iostream> #include <string> using namespace std; int reverseNoRepeat(int n){ string s = to_string(n); string newS;//用来放结果 int arr[10] = {0}; for(int i = s.length() - 1; i >= 0; i--){ if(arr[s[i] - '0'] == 0){ newS += s[i]; arr[s[i] - '0'] ++; } } return stoi(newS); } int main() { int n; cin >> n; cout << reverseNoRepeat(n) << endl; return 0; } // 64 位输出请用 printf("%lld")
字符数字作下标记得 -'0'
string s = to_string(n);
stoi(newS)
逆序循环 i--...