

//
// main.swift
// BOJ
//
// Created by leehwajin on 2022/12/29.
//
import Foundation
//1929소수구하기(에라토스테네스의 체로 풀어야 가장 빠름)
let input = readLine()!.split(separator: " ").map{Int(String($0))!}
var arr = Array(repeating: true, count: input[1]+1)
arr[1] = false
if (input[1] == 1){
}else{
for i in 2..<input[1]{
if arr[i] == false{
continue
}
for j in stride(from: 2*i, through:input[1], by: i){
arr[j] = false
}
}
}
for i in input[0]...input[1]{
if arr[i] == true{
print(i)
}
}
에라토스테네스의 체를 통해서 풀지 않으면 타임아웃이 나는 문제.
타임아웃이 아니고 틀렸다고 뜰 경우
반례 -----
1. 1은 소수가 아니다 !!
2. 1 4 입력했을때 2 3 이 나오는지
3. 1 1 입력했을때 아무것도 프린트가 되면 안된다
'백준' 카테고리의 다른 글
| 스위프트 백준2231 분해합 (0) | 2022.12.31 |
|---|---|
| 스위프트 백준 7568 덩치 (0) | 2022.12.30 |
| 스위프트 백준 2798 블랙잭 (0) | 2022.12.29 |
| 스위프트 백준 2292 벌집 (0) | 2022.12.29 |
| [SWIFT]백준1920 수찾기/이진탐색/시간복잡도 (1) | 2022.12.29 |