알고리즘 문제풀이/프로그래머스 [최소값 찾기] level1 프로그래머스 제일 작은 수 제거하기 자바 풀이 - 프로그래머스 연습문제 제일 작은 수 제거하기 자바 풀이 Level 1 제일 작은 수 제거하기 문제 정리 주어진 배열에서 가장 작은 수를 제거한 배열을 리턴하여라. 배열에 숫자가 하나밖에 없다면 -1을 담은 배열을 리턴하여라. 배열에 주어진 수는 모두 다르다 문제 풀이 배열을 오름차순이나 내림차순으로 정렬해서 제거하면 안됩니다.주어진 원소 순서대로 출력해야 합니다. 가장 작은 수의 인덱스를 찾습니다. 그 인덱스의 수만 빼고 새로운 배열에 숫자를 모두 넣습니다. 그러면 원래 순서대로 들어가게 됩니다. 문제 풀이 class Solution { public static void main(String[] args){ int[] arr = {4,3,2,1}; int[] arr2 = {10}; // debug int[] ans = solution(arr); for(int i=0; i<ans.length; i++) System.out.print(ans[i] + " "); System.out.println(); } public static int[] solution(int[] arr) { if(arr.length == 1){ int[] ans = {-1}; return ans; } int min = Integer.MAX_VALUE; int idx = 0; for(int i=0; i<arr.length; i++){ if(min > arr[i]){ idx = i; min = arr[i]; } } int len = arr.length; int[] ans = new int[len-1]; int i = 0; int j = 0; // 가장 작은 수의 인덱스인 idx의 수만 빼고 모두 넣는다 while(j < len-1){ if(idx != i){ ans[j] = arr[i]; j++; } i++; } return ans; } } 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기Code by horang Contents 당신이 좋아할만한 콘텐츠 [완전탐색, 약수] 프로그래머스 level2 카펫 자바 풀이 2020.05.08 [완전탐색, 소수, 순열] level2 프로그래머스 소수 찾기 자바 풀이 2020.05.04 [for문] level1 프로그래머스 x만큼 간격이 있는 n개의 숫자 자바, 파이썬 풀이 2020.04.22 [수학] level1 프로그래머스 정수 제곱근 판별 자바(java) 풀이 2020.04.22 댓글 0 + 이전 댓글 더보기