728x90
반응형
[프로그래머스] 코딩테스트 연습 -> 코딩테스트 입문 -> 약수 구하기
https://school.programmers.co.kr/learn/courses/30/lessons/120897
해결 과정
먼저 약수가 들어갈 배열의 크기를 정해줘야 한다.
하지만 바로는 알 수 없기 때문에 약수의 개수를 구하는 반복문을 통해 배열의 크기를 구해 준다.
먼저, 변수 a를 선언하고 n%i == 0 조건에 맞을 때마다 a++를 하여 약수의 개수 a를 구해준다.
그렇게 a를 이용하여 배열을 선언해주고, 다시 반복문을 통해 약수를 하나씩 배열에 넣어준다.
변수 k를 만들어 n%i == 0 조건에 맞는 i를 배열 answer에 하나씩 넣어주면서 k++해준다.
그렇게 나온 배열을 오름차순으로 담아야 하므로
Arrays.sort()을 통해 정렬한후 배열 answer을 return해주면 된다.
소스 코드
import java.util.Arrays;
class Solution {
public int[] solution(int n) {
int a = 0;
for (int i=1; i<=n; i++) {
if(n % i == 0) {
a++;
}
}
int[] answer = new int[a];
int k = 0;
for (int i=1; i<=n; i++) {
if(n % i == 0) {
answer[k] = i;
k++;
}
}
Arrays.sort(answer);
return answer;
}
}
728x90
반응형
'JAVA > Programmers' 카테고리의 다른 글
JAVA 프로그래머스 [영어가 싫어요] 자바 (0) | 2023.06.07 |
---|---|
JAVA 프로그래머스 [인덱스 바꾸기] 자바 (0) | 2023.06.07 |
JAVA 프로그래머스 [한 번만 등장한 문자] 자바 (0) | 2023.06.07 |
JAVA 프로그래머스 [다항식 더하기] 자바 (0) | 2023.06.07 |
JAVA 프로그래머스 [최댓값 만들기 (2)] 자바 (0) | 2023.06.07 |
댓글