2023.03.11

1436번: 영화감독 숌

악마의 숫자 666! 세상의 종말을 나타낸다고 하지만 사실상 악마의 숫자를 순화한게 아닐까..?


크흠 아무튼, 세상의 종말이라는 시리즈 영화감독으로 각 제목에 666이 반드시 포함하도록 넘버링을 한다고 한다.

각 시리즈를 거듭할때 마다 666을 포함하고, 커져야 하기 때문에 이를 구현할 방법을 생각해봐야한다.


666을 반드시 포함한 N번째 영화에 붙는 숫자를 구하는 것이고… N이 10,000 보다 작거나 같다. 거기에 2초라는 시간 제한을 생각해보면


666부터 쭉 증가 시키면서 666이 포함된 경우에 카운트하고 카운트가 N 이 되는 순간에 수를 더이상 증가시키지 않으면 된다.

N = int(input())
count = 0
num = 666
while (1):
    st_n = str(num)
    if st_n.find('666') != -1:
        count += 1
    if count == N:
        break
    num += 1

이를 통해서 위와 같이 작성하면 된다. num+1 을 하기전에 count가 N번째인지 체크하여서, N이라면 반복문을 break로 빠져나온다.


N번째 번호가 아니라면 if문을 통해 가지 않고 그대로 코드를 실행하기 때문에 num+1을 하게 된다.


마지막으로 N번째에 대한 번호를 출력한다! print(num)


풀이

if __name__ == '__main__':
    N = int(input())
    count = 0
    num = 666
    while (1):
        st_n = str(num)
        if st_n.find('666') != -1:
            count += 1
        if count == N:
            break
        num += 1

    print(num)

Tags:

Categories:

Updated:

Leave a comment