반응형
알고리즘
JAVA 프로그래머스 나누어 떨어지는 숫자 배열
1. 문제
https://programmers.co.kr/learn/courses/30/lessons/12910
2. 풀이
쉬운듯 어려운듯 쉬운문제..... 리스트는 잘 몰라도 배열은 꽤 안다고 생각했는데 문제를 풀때 배열의 사이즈를 정하지 않아 계속 에러가 났다. 결국 해결해서 다시는 안잊어버리게 주석으로 박제!!
배열과 리스트의 차이를 알게해준문제!! => 참고자료
import java.util.*;
class Solution {
public int[] solution(int[] arr, int divisor) {
// 배열 사용전에는 크기를 지정하지 않아도 됨.
int[] answer = {};
//배열을 리스트로 전환하기 위한 과정
ArrayList<Integer> list = new ArrayList<Integer>();
for(int i=0; i<arr.length; i++){
if(arr[i] % divisor == 0){
list.add(arr[i]); //리스트에 추가하기
}
}
// 리스트가 비어 있으면 -1을 배열에 추가하기
if(list.isEmpty()){
list.add(-1);
}
// 왜 배열의 크기를 지정해야되는지??
// 배열을 사용할 때는 배열의 크기를 지정해야됨..
answer = new int[list.size()]; //배열에 사이즈 지정하기
//리스트를 배열로 바꾸는 과정
for(int i=0; i<list.size(); i++){
// i번째 배열에 i번째 리스트 넣기
answer[i] = list.get(i);
//get은 리스트에서 어떤 객체를 가져오는데 사용되는 메소드
}
Arrays.sort(answer); //리스트 정렬하기
return answer;
}
}
반응형
'알고리즘 > Java' 카테고리의 다른 글
[JAVA] 프로그래머스 같은 숫자는 싫어 (0) | 2021.11.11 |
---|---|
[JAVA] 프로그래머스 하샤드 수 (0) | 2021.11.11 |
[JAVA] 프로그래머스 정수 제곱근 판별 (0) | 2021.11.10 |
[JAVA] 프로그래머스 자연수 뒤집어 배열로 만들기 (0) | 2021.11.10 |
[JAVA] 프로그래머스 자릿수 더하기 (0) | 2021.11.10 |