注意,请审清题
n = 263457394695时,你的结果可能是997665544332但应该等于263457394956。
因为997665544332 > 263457394956 所以它不是下一个更大的数字
题目如下
创建一个函数,它接受一个正整数并返回可以通过重新排列其数字形成的下一个更大的数字。
如果无法重新排列数字以形成更大的数字,则返回-1
实例:
12 ==> 21
513 ==> 531
2017 ==> 2071
9 ==> -1
111 ==> -1
531 ==> -1
自己写了一个,但是不符合题意
请问应该怎么写
def next_bigger(n):
res = int(''.join(sorted(list(str(n)),reverse=True)))
return res if res != n else -1