[JAVA] 프로그래머스 : 소인수분해

조예빈·2024년 8월 27일
0

Coding Test

목록 보기
122/137

https://school.programmers.co.kr/learn/courses/30/lessons/120852

for문을 이용해서 i가 2(가장 작은 소수)일 때 부터 n까지 증가시키며 나눈다. 이 때, n을 i로 나눈 나머지가 0일 때 까지 가장 작은 수로 n을 나누어 공통된 인수를 지우고, 그 다음 i값을 증가시키며 인수 값을 늘려 주어야 한다.

import java.util.*;

class Solution {
    public ArrayList solution(int n) {
        ArrayList<Integer> answer = new ArrayList<>();
        for(int i=2; i<=n; i++){
            if(n%i==0){
                while(n%i==0){
                    n = n/i;
                }
                answer.add(i);
            }
        }
        return answer;
    }
}

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러

0개의 댓글