정답 코드:
N = int(input())
cut = 0
for i in range(1,N+1):
if i < 100:
cut += 1
else:
b = str(i)
if int(b[0])-int(b[1]) == int(b[1])-int(b[2]):
cut +=1
print(cut)
코드 풀이:
먼저 N을 입력 받고,
한수를 셀 cut 를 0으로 선언한다.
반복문을 통해 문제에서 제시한
1보다 크고, N보다 작거나 같은 수들의 범위를 설정 후
100보다 작을 땐 cut 를 1씩 증가시키고(2자리수까지는 다 한수)
세 자리 수일 때 계산을 하기 위해
b = str(i) 로 선언해서
100의 자리 - 10의 자리 == 10의 자리 - 1의 자리 일 경우
한수로 취급해 cut += 1 을 하게 해줬다.
이 때 문자열로 바꾸지 않고
각 자리수를 i // 100 , i % 100 // 10 등으로
표현할 수 있으나, 전 문제인 셀프넘버에서 고생을 한 기억에
str으로 변환해서 문제를 해결해보았다!