feat: kata next biggest number. Works but struggles with big numbers. test: test cases for kata 'Next bigger number with the same digits'
This commit is contained in:
parent
bc00bcf5f3
commit
01a6ff1ead
16
src/codewars/kata_next_bigger_number_same_digits.py
Normal file
16
src/codewars/kata_next_bigger_number_same_digits.py
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
def next_bigger(n):
|
||||||
|
digits = list(str(n))
|
||||||
|
digits.sort(reverse=True)
|
||||||
|
number = int("".join(digits))
|
||||||
|
if number == n:
|
||||||
|
return -1
|
||||||
|
|
||||||
|
for i in range(n + 1, number + 1):
|
||||||
|
higher_number = list(str(i))
|
||||||
|
higher_number.sort(reverse=True)
|
||||||
|
|
||||||
|
if higher_number == digits:
|
||||||
|
return i
|
||||||
|
|
||||||
|
|
||||||
|
print(next_bigger(84876644310))
|
||||||
11
tests/codewars/test_next_bigger_number_same_digits.py
Normal file
11
tests/codewars/test_next_bigger_number_same_digits.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
from src.codewars.kata_next_bigger_number_same_digits import next_bigger
|
||||||
|
|
||||||
|
|
||||||
|
def test_next_bigger():
|
||||||
|
assert next_bigger(12) == 21
|
||||||
|
assert next_bigger(21) == -1
|
||||||
|
assert next_bigger(513) == 531
|
||||||
|
assert next_bigger(2017) == 2071
|
||||||
|
assert next_bigger(414) == 441
|
||||||
|
assert next_bigger(144) == 414
|
||||||
|
# assert next_bigger(84876644310) ==
|
||||||
Loading…
x
Reference in New Issue
Block a user