일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Notice
Recent Posts
Recent Comments
Link
Tags
- 접속 url 출력
- 왓챠피디아 클론 코딩
- 모스부호(1) 자바
- 자바 합성수 찾기
- 티스토리챌린지
- 개미 군단 자바
- string과 stringbuilder의 차이점
- stringbuilder란
- 오블완
- 스프링부트 의존성 설정
- string과 stringbuilder의 차이
- 자바 팩토리얼
- 경우의 수 자바
- 프로그래머스
- string과 stringbuilder 성능 최적화
- 배열 순환 문제 공식
- 스프링 부트 배너 설정
- 소인수분해 구하는 공식
- 펙토리얼
- 프로그래머스 공 던지기 게임
- 프로그래머스 문자열 정렬하기(1)
- 스프링 부트 프로젝트 세팅
- 숨어있는 숫자의 덧셈 (1) 자바
- spring boot 배너 설정
- 배열 순환 자바
- 배열 순환
- 자바 소인수분해
- string과 stringbuilder
- string과 stringbuilder 성능 차이
- 외계행성의 나이 자바
Archives
- Today
- Total
여름 언덕에서 배운 것
[0단계/3점] 소인수분해 본문
소인수분해 저번에도 나온 거 같은데 또 틀렸네..
import java.util.*;
class Solution {
public int[] solution(int n) {
List<Integer> answer = new ArrayList<>();
for(int i =2; i<=n;i++){
if(n%i==0){
answer.add(i);
while(n%i==0){
n/=i;
}
}
}
return answer.stream().mapToInt(Integer::intValue).toArray();
}
}
✅ 2부터 나누는 이유
💡 소수는 2부터 시작하기 때문이다!
즉, 가장 작은 소수인 2부터 시작해서 순서대로 나누는 것이 중요
예제 1: 12를 소인수분해하는 과정
n = 12
- 2로 나눠본다 → 12 ÷ 2 = 6 (2는 소인수!)
- 6도 2로 나눠본다 → 6 ÷ 2 = 3 (2는 또 소인수!)
- 3은 더 이상 2로 안 나눠지니까 3으로 나눠본다.
- 3 ÷ 3 = 1 (✅ 3도 소인수)
- 이제 n = 1이 되었으니 끝!
결과: {2, 3}
728x90
'가랑비에 옷 젖는 줄 모른다 💻 > 🌰코테문풀_꾸준히' 카테고리의 다른 글
[0단계/1점]숨어있는 숫자의 덧셈 (1) (0) | 2025.03.19 |
---|---|
[0단계/1점]문자열 정렬하기 (1) | 2025.03.19 |
[0단계/1]모음 제거 (0) | 2025.03.19 |
[0단계/1점] 팩토리얼 (0) | 2025.03.13 |
[0단계/1점]합성수 찾기 (0) | 2025.03.13 |