728x90
1. 문제
2. 해결
- 우선 문제이해를 위해 666이 포함된 수열을 순서대로 써보았다.
[666, 1666, 2666, 3666, 4666, 5666, 6660, 6661, 6662, 6663, 6664, 6665, 6666, 6667, 6668, 6669, 7666.. ]
처음에는 6660~6665를 놓치고 6666 6667 순서대로 작성하였다. 문제를 정말 꼼꼼하게 살펴보아야 할 것 같다.
- 수열 앞 뒤로 배열을 넣어 정렬하려고 했다. 하지만 완전 탐색을 이용해도 될 것 같다 !
- n 의 제한이 10,000이다. 입력받아봤자 10,000번째밖에 모른다는 것이다 !
- 완전 탐색을 이용하기위해 666부터 +1씩 해주면서 '666'이 포함되어 있으면 cnt를 +1씩 해주기로 생각했다.
- 이때 '666'이 title안에 있음을 확인하기 위해서 title을 문자열로 변환해주고 탐색하면 된다.
참고 )
완전탐색에 대해 정리해놓은 포스팅이다.
3. 코드
n = int(input())
cnt = 0
title = 666
while(True):
if '666' in str(title) :
cnt +=1
title += 1
if cnt == n :
print(title-1)
break
'[알고리즘] > BOJ' 카테고리의 다른 글
[백준/Python] 1010번: 다리놓기 (조합) (0) | 2023.03.07 |
---|---|
[백준/Python] 3040번: 백설 공주와 일곱 난쟁이 (완전탐색) (0) | 2023.03.06 |
[백준/Python] 18870번: 좌표 압축 (1) | 2023.03.01 |
[백준/Python] 7568번: 덩치 (BruteForce) (0) | 2023.02.28 |
[백준/Python] 1978: 소수찾기 (0) | 2023.02.27 |