반응형
https://www.acmicpc.net/problem/1436
문제 설명
666, 1666, 2666, 3666 ... 으로 수 들이 나열될 때
N번째 수는 어떤 수인지를 맞추는 문제이다.
풀이 과정
문제에서 주의해야 할 점은 6이 3번 나타나기 때문에 7번째 수는 6666이 아니라 6660이 되어야 한다.
그리고 작은 수들부터 나열을 하기 때문에 8번째 수는 7666이 아니라 6661이 될 것이다.
이러한 조건들을 위해 조건문을 나열하기에는 너무 까다롭기 때문에
하나하나 직접 값을 비교하는 방법을 이용하자.
(N은 최대 10000이기 때문에 시간초과도 발생하지 않는다.)
666부터 시작하여 값을 1씩 더해가며
작은값부터 찾는 방식이다.
n = int(input())
a = 666
cnt = 0
while n:
if "666" in str(a):
n -= 1
a += 1
print(a-1)
전체 문제 & 코드는 위의 깃에 정리되어 있습니다.
팔로우 & 맞팔은 환영입니다 !
반응형
'Algorithm > BruteForce' 카테고리의 다른 글
[백준] 14889 스타트와 링크 (Python 파이썬) (0) | 2021.10.08 |
---|---|
[프로그래머스] 메뉴 리뉴얼 (Python 파이썬) (0) | 2021.04.24 |
[프로그래머스] 숫자의 표현(Python 파이썬) (0) | 2021.04.22 |
[백준] 2292 벌집 (Python 파이썬) (0) | 2021.04.12 |