[백준/Python] 17614번 : 369

문제

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

  • "3","6","9" 문자열 카운트하는 문제

풀이

N의 최댓값이 10의 6제곱이기 때문에 루프 하나로 처리한다면 성능 상의 문제가 발생하지 않아서 브루트 포스로 접근하였다.

cnt 변수를 두고, 1부터 N까지의 숫자 중 3,6,9를 포함하는 수를 카운트하여 더해주는 방식으로 값을 구했다.

N = int(input())

cnt = 0
for i in range(1, N+1):
    tmp = str(i)
    cnt += tmp.count("3")
    cnt += tmp.count("6")
    cnt += tmp.count("9")

print(cnt)