체리의 하루
Published 2023. 3. 27. 16:33
[Go] BOJ / 11653번 / 소인수분해 BOJ/Go

💻 문제

 

11653번: 소인수분해

첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.

www.acmicpc.net

 

📜 풀이

package main

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

func main() {
	var n, org int
	var so []int

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

	defer w.Flush()

	fmt.Fscanln(r, &n)
	org = 1
	m := n

	for i := 2; i <= m; {
		if n%i == 0 {
			so = append(so, i)
			n = n / i
			org = org * i
			if m == org {
				break
			}
		} else {
			i++
		}
	}

	for i := range so {
		fmt.Fprintln(w, so[i])
	}
}

 

728x90

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

[Go] BOJ / 2555번 / 생일 출력하기  (0) 2023.03.27
[Go] BOJ / 1085번 / 직사각형에서 탈출  (0) 2023.03.27
[Go] BOJ / 2581번 / 소수  (0) 2023.03.27
[Go] BOJ / 9506번 / 약수들의 합  (0) 2023.03.27
[Go] BOJ / 1978번 / 소수 찾기  (0) 2023.03.27