큼직큼직하다
1280 단어 JavaArithmetic
:
。 :
abcd abdc
, , , , , 。 : 。 “ ”。
:
:
abfxy
:
abfyx
:
:
ayyyxxff
:
fafxxyyy
:
1000 。
:
, 。
public class LargerString {
static void f_next(char[] a) {
int x1 = -1;
int min = a.length - 1;
for (int i = a.length - 1; i > 0; i--) {
if (a[i] < a[min]) {
min = i; // x1+1 , min
}
if (a[i - 1] < a[i]) {
x1 = i - 1; // , x1
break;
}
}
if (x1 < 0)
return;
char t = a[x1];
a[x1] = a[min]; // x1 min
a[min] = t;
String s = "yyyyyffff";
int count;
for (int i = 1; i < a.length - x1 + 2; i++) // x1+1 N-1 。
{
count = 0;
for (int j = x1 + 1; j < a.length - i; j++)
if (a[j] > a[j + 1]) {
char p = a[j];
a[j] = a[j + 1];
a[j + 1] = p;
count++;
}
if (count == 0)
break;
}
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
char[] a = scan.nextLine().toCharArray();
f_next(a);
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]);
}
System.out.println();
}
}