728x90
문제 소개
백준 1436번 문제는 '숌' 감독이 좋아하는 숫자인 '666'이 포함된 영화 제목을 찾는 문제입니다. 간단히 말해, '666'이 연속적으로 포함된 숫자들을 찾는 것이 목표입니다. 예를 들어, 첫 번째 영화 제목은 666, 두 번째 영화 제목은 1666, 세 번째는 2666입니다. 이렇게 '666'이 들어가는 숫자를 순서대로 나열해 찾는 과정이 필요합니다.
문제 접근 방법
이 문제를 해결하기 위해서는 숫자를 하나씩 증가시키며 '666'이 포함되는지를 확인해야 합니다. 단순히 1부터 시작해 조건에 맞는 숫자를 찾을 때까지 반복하면 해결할 수 있죠. 이 과정에서 중요한 점은 어떤 데이터 구조나 알고리즘의 사용보다는, 반복문을 어떻게 효율적으로 작성하는가에 있습니다.
제가 사용한 접근 방법은 다음과 같습니다:
- 숫자 증가시키기: 시작은 666부터 합니다. 숫자를 하나씩 증가시키면서 '666'이 포함되는지를 체크합니다.
- '666' 포함 여부 확인: 파이썬에서는 문자열의 부분 문자열을 손쉽게 확인할 수 있기 때문에, 이를 이용해 조건을 만족하는 숫자를 찾습니다.
- N번째로 찾기: 문제에서 주어진 N번째 제목을 찾기 위해, 조건을 만족할 때마다 카운트를 증가시키고, 원하는 값에 도달하면 출력합니다.
코드 구현
n = int(input())
count = 0
num = 666
while True:
if '666' in str(num):
count += 1
if count == n:
print(num)
break
num += 1
이 코드의 핵심은 while 루프를 사용해 모든 숫자를 순차적으로 검사하는 것입니다. if '666' in str(num) 구문을 통해 현재 숫자가 '666'을 포함하고 있는지 여부를 확인할 수 있습니다. 조건을 만족할 때마다 카운트를 증가시키고, N번째 숫자에 도달하면 결과를 출력하는 방식입니다.
문제 해결 후 느낀 점
이 문제는 알고리즘의 복잡함보다는 기본적인 반복과 조건 확인을 얼마나 정확하게 구현할 수 있는지를 테스트하는 문제입니다. 코드를 작성하면서 '단순 반복문'이 얼마나 강력한 도구인지를 다시금 느꼈습니다. 또한, 문자열 조작이 문제 해결에 얼마나 유용한지를 깨닫게 되었죠.
728x90
반응형
'console.log("What ? " + Cord); > 코딩테스트' 카테고리의 다른 글
[백준] 2675번 - 문자열 반복 파이썬 (Python) (1) | 2024.12.04 |
---|---|
[백준] 1764번 - 듣보잡 파이썬 (Python) (0) | 2024.12.02 |
[백준] 1018번 - 체스판 다시 칠하기 파이썬 (Python) (1) | 2024.11.29 |
[백준] 24262번 - 알고리즘의 수행 시간 1 파이썬 (Python) (0) | 2024.11.27 |
[백준] 2869번 - 달팽이는 올라가고 싶다 파이썬(Python) (0) | 2024.11.26 |