체리의 하루
Published 2023. 4. 17. 13:32
[Go] BOJ / 1929번 / 소수 구하기 BOJ/Go

💻 문제

 

1929번: 소수 구하기

첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.

www.acmicpc.net

 

📜 풀이

package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	var m, n int

	r := bufio.NewReader(os.Stdin)
	w := bufio.NewWriter(os.Stdout)

	fmt.Fscanln(r, &m, &n)

	num := make([]bool, n+1)

	for i := 2; i < n+1; i++ {
		if num[i] { //값을 초기화하지 않으면 bool형의 기본값은 false
			continue
		}
		for j := i * 2; j <= n; j += i {
			num[j] = true
		}
		if i >= m {
			fmt.Fprintln(w, i)
		}
	}

	w.Flush()
}

 

✍ 설명

 

728x90

'BOJ > Go' 카테고리의 다른 글

[Go] BOJ / 4948번 / 베르트랑 공준  (0) 2023.04.17
[Go] BOJ / 4134번 / 다음 소수  (0) 2023.04.17
[Go] BOJ / 1735번 / 분수 합  (1) 2023.04.12
[Go] BOJ / 13241번 / 최소공배수  (0) 2023.04.12
[Go] BOJ / 1934번 / 최소공배수  (0) 2023.04.12