💻 문제
4134번: 다음 소수
정수 n(0 ≤ n ≤ 4*109)가 주어졌을 때, n보다 크거나 같은 소수 중 가장 작은 소수 찾는 프로그램을 작성하시오.
www.acmicpc.net
📜 풀이
<bash />
package main
import (
"bufio"
"fmt"
"os"
"strconv"
)
func Prime(num int) bool {
for i := 2; i*i <= num; i++ {
if num%i == 0 {
return false
}
}
return true
}
func main() {
var t, n int
var p bool
s := bufio.NewScanner(os.Stdin)
w := bufio.NewWriter(os.Stdout)
s.Scan()
t, _ = strconv.Atoi(s.Text())
for i := 0; i < t; i++ {
s.Scan()
n, _ = strconv.Atoi(s.Text())
if n == 0 || n == 1 {
fmt.Fprintln(w, 2)
continue
}
if Prime(n) == true {
fmt.Fprintln(w, n)
} else {
for {
n++
p = Prime(n)
if p == true {
fmt.Fprintln(w, n)
break
}
}
}
}
w.Flush()
}
728x90
'BOJ > Go' 카테고리의 다른 글
[Go] BOJ / 13909번 / 창문 닫기 (0) | 2023.04.17 |
---|---|
[Go] BOJ / 4948번 / 베르트랑 공준 (0) | 2023.04.17 |
[Go] BOJ / 1929번 / 소수 구하기 (0) | 2023.04.17 |
[Go] BOJ / 1735번 / 분수 합 (0) | 2023.04.12 |
[Go] BOJ / 13241번 / 최소공배수 (0) | 2023.04.12 |