[백준 15965] K번째 소수

Junyoung Park·2022년 8월 29일
0

코딩테스트

목록 보기
588/631
post-thumbnail

1. 문제 설명

K번째 소수

2. 문제 분석

에라토스테네스의 체를 통해 풀었다.

3. 나의 풀이

import Foundation

let K = Int(String(readLine()!))!
var boxes = Array(repeating: true, count: 10_000_000)
boxes[0] = false
boxes[1] = false
for idx in 2..<boxes.count {
    if boxes[idx] {
        if idx * 2 < boxes.count {
            for idx2 in stride(from: idx * 2, to: boxes.count, by: idx) {
                boxes[idx2] = false
            }
        }
    }
}

let filteredBoxes = boxes.enumerated().filter{$0.element}.map{$0.offset}
print(filteredBoxes[K-1])
profile
JUST DO IT

0개의 댓글