/* -*- coding: utf-8 -*- * * 927.cc: No.927 Second Permutation - yukicoder */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; /* constant */ const int MAX_N = 100000; /* typedef */ typedef long long ll; typedef vector vi; typedef queue qi; typedef pair pii; /* global variables */ char s[MAX_N + 4]; /* subroutines */ /* main */ int main() { scanf("%s", s); int n = strlen(s); sort(s, s + n, greater()); int k = n - 1; for (; k > 0; k--) if (s[k] != s[k - 1]) { swap(s[k], s[k - 1]); break; } if (k == 0 || s[0] == '0') puts("-1"); else puts(s); return 0; }