백준 BaekJoon Online Judge // 1436
2021. 1. 27. 18:01ㆍProgramming/BOJ
백준 알고리즘 BaekJoon Online Judge 1436번 "영화감독 숌" 문제입니다.
N = int(input())
i = 666
lst = []
while len(lst) < N:
if "666" in str(i):
lst.append(i)
i += 1
print(lst[len(lst)-1])
"666"이 들어간 수들 중에서 N번째로 큰 수를 구하는 문제다.
브루트 포스 알고리즘 문제 중의 하나인 만큼 시간은 크게 상관없이 단순무식하게 풀면된다.
시간을 조금이라도 줄이고자 하면 666부터 시작해서 1씩 증가시킨 후 문자열로 변환시켜서 "666"이 포함되어 있는지 in 으로 확인하면 된다.
리스트에 저장하면서 리스트의 길이가 N이 될 때까지 저장 후 저장된 리스트의 가장 마지막 인덱스의 값을 불러오면 답이 나온다.
이렇게 문제를 고민하게 된 까닭은 5666다음에 6666인줄 알았는데 6660인 것을 깨닫고 저렇게 풀기로 했었다.
'Programming > BOJ' 카테고리의 다른 글
BaekJoon Online Judge // 1011 (0) | 2021.03.17 |
---|---|
백준 BaekJoon Online Judge // 2750 (0) | 2021.01.28 |
백준 BaekJoon Online Judge // 7568 (0) | 2021.01.27 |
백준 BaekJoon Online Judge // 2231 (0) | 2021.01.26 |
백준 BaekJoon Online Judge // 2798 (0) | 2021.01.26 |