#include <bits/stdc++.h> using namespace std; int main() { string s; cin>>s; unordered_map<char,bool>p;//记录出现字符 unordered_map<char,char>res;//记录【上一个出现的字符,下一个出现的字符】 vector<char>vec;//存出现的字符 for(char& ch:s){ if(!p[ch]) vec.push_back(ch); p[ch]=true; } int n=vec.size(); if(n<2)//只有一种字符输出-1 cout<<-1<<endl; for(int i=0;i<n;i++){//每种字符变成下一个出现的字符,最后一个字符变成第一个出现的字符 res[vec[i]]=vec[(i+1)%n]; } for(int i=0;i<s.length();i++){//输出 cout<<res[s[i]]; } }