반응형
https://www.acmicpc.net/problem/1436
처음 생각했던 풀이는 영화제목이 1666, 2666, 3666, ... 으로 증가하니까 그냥 666 앞에 입력받은 숫자만 붙이면 되겠다! 라고 생각해서 코드를 제출했더니 틀렸다고 나왔다. 코드를 짤 때부터 너무 간단하다고 생각하긴 했다...^^ 틀리고 나니 문제를 잘못 이해한 것 같아서 블로그를 찾아봤다.
n = int(input())
movie = str(n-1) + '666'
print(movie)
블로그를 찾아보니 영화제목이 6번째는 6666 이 아니라 6660 이었던 것이었다!!! 그래서 틀린거였다.. 브루트포스 문제여서 답을 찾을 때까지 모든 숫자를 탐색했다.
n = int(input()) # 몇번째인지
movie = 666 # 영화 제목
# 브루트 포스 수행
while n:
if '666' in str(movie): # 제목에 '666' 이 있으면 n에 -1
n -= 1
movie += 1 # 다음 숫자로 넘어가기 위해 +1
print(movie - 1)
1. n 은 몇번째인지 의미하는 변수이고, movie 는 영화 제목이다.
2. 브루트 포스를 수행한다.
2-1. 제목에 '666' 이 있다면 원하는 영화 제목을 찾은 것이므로 n에 -1 을 한다.
2-2. 숫자를 1씩 증가시키면서 영화 제목을 찾아야하므로 다음 숫자로 넘어가기 위해 +1 한다.
3. 영화 제목을 출력한다.
반응형
'Algorithm > 백준' 카테고리의 다른 글
[백준/Python] 단어 정렬 (0) | 2021.09.06 |
---|---|
[백준/Python] 통계학 (0) | 2021.08.30 |
[백준/Python] 체스판 다시 칠하기 (0) | 2021.08.24 |
[백준/Python] 덩치 (0) | 2021.08.24 |
[백준/Python] 하노이 탑 이동 순서 (0) | 2021.08.14 |