[백준/Python] 17618번 : 신기한 수

문제

https://www.acmicpc.net/problem/17618

  • 수학 / 브루트 포스 기초 문제

풀이

특정 숫자가 각 자릿수를 더한 값으로 나누어지면 신기한 수이다. 루프문 하나로 간단하게 풀이할 수 있지만 Python에서는 시간 초과가 발생하여 부분적인 정답으로 채점이 된다.

N = int(input())

cnt = 0

for i in range(1, N+1):
    tmp = 0
    for c in str(i):
        tmp += int(c)
    if i % tmp == 0:
        cnt += 1

print(cnt)