99클럽 코테 스터디 TIL - 백준 소인수분해

혀니·2024년 4월 15일

코딩 TIL

목록 보기
17/28


백준 브론즈1 소인수분해

오랜만에 브론즈 문제를 풀었다.
사실 정보처리기사 실기를 준비하는데
23년 3차 시험에서 프로그래밍 쪽이 어려워서 충격받았던...
특히 완전수 문제가 수학을 모르면 1부터 100까지 for문을 돌려봐야 풀 수 있어서 기본적인 수학 개념은 알고 가야 될 것 같았다.
(정처기 시험대비 완전수 메모 : 6, 28, 496 ...)

물론 기본적인 개념들이긴 하지만...
완전수를 몇 개 알아야 풀 수 있는 문제가 나올줄은...

그래서 백준 숫자문제를 풀어봤다.
프로그래밍 자체는 쉬웠다.

나머지가 0일 때 소인수분해 된다는거니까 나머지가 0인 것을 찾으면 된다 :D


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(bufferedReader.readLine());
        ArrayList <Integer> arrayList = new ArrayList<>();

        int total = N;
        int i = 2;
        while(total>1){
            if(total % i == 0){
                total = total / i;
                arrayList.add(i);
                i=2;
            } else{
                i++;
            }

        }
        StringBuilder stringBuilder = new StringBuilder();
        for(int j=0;j<arrayList.size();j++){
            stringBuilder.append(arrayList.get(j)).append("\n");
        }
        System.out.println(stringBuilder);
    }
}

2개의 댓글

comment-user-thumbnail
2024년 4월 18일

안녕하세요, 99클럽 그룹 리더 은딩입니다!

이 문제 저는 파이썬으로 풀었었는데 같은 로직을 자바 코드로 보니까 자바와 파이썬의 다른 점이 눈에 보이네요!! 고생하셨습니다!! 정처기 실기 응원합니다ㅎㅎ

앞으로도 힘내서 매일 TIL 도전해 보세요! 화이팅입니다 :)

99클럽 https://bit.ly/3TN5TBL

1개의 답글