Algorithm/BOJ
[백준/1436] 영화감독 숌 (with 파이썬)
Potato potage
2022. 11. 29. 18:38
반응형
✔ 문제
✔ 풀이
import sys
input = sys.stdin.readline
n = int(input())
name = 666
count = 0
while True:
if '666' in str(name):
count += 1
if count == n:
print(name)
break
name += 1
✔ 설명
666, 1666, 2666, 3666 이렇게 n-1+666 이렇게 진행되는 것이 아니라 6660이나 6661도 생각해봐야 한다.
즉, 1~10000 까지의 숫자 중에서 666만 들어가면 되는 것이다.
1부터 10000까지의 숫자 중에서 666이 들어간 숫자를 찾고 이 숫자가 몇 번째로 666이 포함된 숫자인지 세면 된다.
✔ 후기
다른 사람들도 그랬겠지만 나도 맨 처음에는 n-1+666 값을 구하면 되는 줄 알았는데 아니었다.
보기보다 코드도 짧고 어렵지 않아서 문제만 잘 이해하면 금방 풀 수 있을 것이다.
사실 브루트 포스 관련 문제들을 다시 한 번 풀어봐야하는데 미래의 내가... 한 번에 풀 수 있길 바란다.
반응형