개발 연습장/백준 문제풀이

[파이썬, Python] 백준 2960: 에라토스테네스의 체

LooanCheong 2023. 6. 5. 10:44
반응형

문제

https://www.acmicpc.net/problem/2960

 

2960번: 에라토스테네스의 체

2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다.

www.acmicpc.net

코드

n, k = map(int, input().split())
num = list(i for i in range(2, n+1))
del_num = list()


while len(del_num) < k:
    tar = num[0]

    for i in num:
        if i % tar == 0:
            del_num.append(i)
            num.remove(i)
            

print(del_num[k-1])

설명

우선 입력값을 받아주고 범위에 맞는 수 리스트를 생성해 주었다.
그리고 지워진 수의 값을 담아줄 리스트도 생성했다.

그리고 지워진 수의 개수가 k개가 될 때까지 반복문을 반복한다.

타깃은 제일 작은 수(소수)로 잡아주고
소수의 배수인 경우 지우면서 지워진 수 리스트에 추가해 준다.

최종적으로 지워진 수를 출력한다.

반응형