Последняя цифра, переставленная в начало

Последнюю цифру натурального числа переставили в начало (например, 1234 → 4123) и полученное число сложили с исходным. Сумма оказалась равной введённому пользователем натуральному числу. Чему равно исходное число? Найдите все возможные варианты.

Моя попытка решения приведена ниже. Пожалуйста, посоветуйте, как улучшить код.

def sum(k):
    if k<10:
        return 2*k
    else:    
        last=k%10
        quot=k//10
        new=int(str(last)+str(quot))
        return k+new
 
num=int(input())
count=0
for i in range(num):
    if sum(i)==num:
        count+=1
        print(i)
if count==0:
    print('No such numbers.')

Ответы (0 шт):