# yukicoder No.39 桁の数字を入れ替え N = [int(i) for i in input()] for (i, x) in enumerate(N[:-1]): flag = False maxi = x for (j, y) in enumerate(N[i + 1:]): # 入れ替えが起こるならできるだけ桁の低いところから一番大きいのを取ってくる if y > maxi or (flag and y >= maxi): maxi = y min_j = j flag = True if flag: N[i], N[i + min_j + 1] = N[i + min_j + 1] , N[i] break print("".join([str(i) for i in N]))