반응형

-풀이

N,K=map(int,input().split())
array = [True]*(N+1)
for i in range(2, N+1):
  for j in range(i, N+1, i):
    if array[j] == True:
      array[j] = False
      K -= 1
      if K == 0:
        print(j)
        break

-풀이 설명

그냥 소수를 구하는 문제가 아니라 몇 번째 지워지는 수를 구하는 것이었다. 생각보다 쉬운 문제였는데, 에라토스테네스의 체를 이용하여 소수를 구한 코드부터 수정하는 방식으로 하다가 엄한 곳에서 많이 헤매었다.

+ Recent posts