def solve(a: list) -> int:
result = 0
for i in range(len(a)):
result += a[i]
return result
https://docs.python.org/3/library/typing.html
https://realpython.com/python-type-checking/
def selfNum(N):
selfNumList = [0]*(N+1) # 0부터 N개까지 생성
for num in range(1,N+1): # 1부터 N까지
while True:
strNum = str(num)
units = 0
for j in range(len(strNum)): # (3), 굳이 units 변수를 또 쓸 필요는 없다~~!!!!
units += int(strNum[j])
num = num + units
if num > N:
break
selfNumList[num] += 1
for i in range(1,N+1): # 1부터 N까지
if selfNumList[i] == 0:
print(i)
selfNum(10000)
def hanNumber(N: int):
result = N # 한수의 개수 (1)
if N // 100 != 0: # 세자리수 이상일 경우 (2)
for num in range(100, N+1): # (2)-(a)
strnum = str(num)
d = int(strnum[0]) - int(strnum[1]) # 공차 (2)-(b)
for i in range(1, len(strnum)-1): # (num의 자릿수-1)만큼만 계산하면 된다. (2)-(c)
temp = int(strnum[i]) - int(strnum[i+1])
if d != temp:
result -= 1
break
print(result)
hanNumber( int(input()) )