코딩 테스트
프로그래머스 제일 작은 수 제거하기 Java
hyecozy
2022. 7. 28. 13:06
https://school.programmers.co.kr/learn/courses/30/lessons/12935
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
class Solution {
public int[] solution(int[] arr) {
int min = 9999999;
if(arr.length <= 1){
int[] answer = {-1};
return answer;
}
else{
int[] answer = new int[arr.length - 1];
for(int i = 0; i < arr.length; i++){
min = Math.min(arr[i], min);
}
int j = 0;
for(int i = 0; i < arr.length; i++){
if(arr[i] == min){
continue;
}
answer[j++] = arr[i];
}
return answer;
}
}
}
➡️ 최솟값을 나타내는 변수 min을 생성할 때 나올 수 있는 최대의 수를 넣어서 생성
➡️ 정직하게 메서드에 들어온 배열의 길이가 1이하일 경우와 그렇기 않을 경우로 나누어서 구현 (if else)
➡️ Math.min()으로 최솟값을 찾은 후, answer배열을 만드는데 arr배열의 최솟값이 아닌 경우에만 반복문으로 옮겨(?) 줌