Последняя цифра, переставленная в начало
Последнюю цифру натурального числа переставили в начало (например, 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.')