문제 설명

솔루션
class Solution {
public int[] solution(int n) {
int cnt = 0;
int j = 0;
for(int i = 1; i <= n; i++){
if(n % i == 0){
cnt ++;
}
}
int[] answer = new int [cnt];
for(int i = 1; i <= n; i++){
if(n % i == 0){
answer[j] = i;
j++;
}
}
return answer;
}
}
배열의 갯수를 정한다
for문을 통해서 answer[j] = i;
j ++
다른 방법
import java.util.List;
import java.util.ArrayList;
class Solution {
public int[] solution(int n) {
List<Integer> answer = new ArrayList<>();
for(int i=1; i<=n; i++){
if(n % i == 0){
answer.add(i);
}
}
return answer.stream().mapToInt(x -> x).toArray();
}
}
리스트로 변경하여 약수일때마다 answer.add(i)
다시 배열로 변경하여 반환한다
'java' 카테고리의 다른 글
| [프로그래머스 - 자바] 숫자 찾기 (0) | 2023.08.29 |
|---|---|
| [프로그래머스 - 자바] 369 게임 (0) | 2023.08.29 |
| [프로그래머스 - 자바] 피자 나눠 먹기 (2) (0) | 2023.08.28 |
| [프로그래머스- 자바]외계행성의 나이 (0) | 2023.08.25 |
| [프로그래머스 - 자바] 각도기 (0) | 2023.08.21 |