//活动地址: 牛客春招刷题训练营 - 编程打卡活动 #include <bits/stdc++.h> #define int long long using namespace std; void solve(){ string s; cin>>s; int n=s.size(); unordered_map<int,bool>p; unordered_map<int,char>res; vector<char>v; for(auto x:s){ if(!p[x]){ // 存储这个的下一个字符 v.push_back(x); } // 标记已经存在 p[x]=true; } n=v.size(); if(v.size()==1){ cout<<"-1"; } else{ // 把每一字符用它后面应该字符来替代 for(int i=0;i<n;i++){ res[v[i]]=v[(i+1)%n]; // a-b b-c c-a } for(int i=0;i<s.size();i++)cout<<res[s[i]]; } } signed main() { int T=1; //cin>>T; while(T--){ solve(); } } //活动地址: 牛客春招刷题训练营 - 编程打卡活动 // 64 位输出请用 printf("%lld")