본문 바로가기
with my rubber duck/codingTest

[프로그래머스] K번째변수 풀어보기

by stilinski 2022. 6. 3.
728x90
import java.util.Arrays;
class Solution {
    public int[] solution(int[] array, int[][] commands) {
       int[] answer = new int[commands.length];
       
	//커맨드 배열의 크기만큼 돌아감
       for(int i = 0;i<commands.length;i++){
             // 자른다
       int[] arr = Arrays.copyOfRange(array,commands[i][0]-1,commands[i][1]);

        //정렬한다
   		for (int k = 0; k < arr.length-1; k++) {
                for (int j = k+1; j < arr.length; j++) {
                    if(arr[k] > arr[j]){
                        int temp = arr[k];
                        arr[k] = arr[j];
                        arr[j] = temp;
                    }
                }
            }
        //인덱스에 있는 값을 가져와서 정답 배열에 넣는다
            answer[i]=arr[(commands[i][2])-1];
        }

        return answer;
    }
}

겸사겸사 정렬 알고리즘도 복습했다.

인텔리제이만 쓰다가 갑자기 아무 기능도 없는 IDE 쓰려니 너무 .... 불편하다ㅋㅋ...

앞으로 이클립스를 좀 써야겠다.

 

 


6/11 복습

 

라이브러리 하나도 안쓰고 해보기 도전해봤다~

그래봤자 자르기 부분만 바뀐거지만..ㅎ

class Solution {
	    public int[] solution(int[] array, int[][] commands) {
	        int[] answer = new int[commands.length];	        
	        
	        for(int i = 0;i<commands.length;i++){
	            //자르고
	            int index = 0;
	            int startNum= commands[i][0];
	            int endNum=commands[i][1];
	            int[] forSort = new int[(endNum-startNum)+1];
	            for(int j=startNum-1;j<endNum;j++){
	                forSort[index++]=array[j];
	            }
	            index=0;
	            
	            //정렬
	            int N =forSort.length;
	            for(int k = 0;k<N-1;k++) {
	            	for(int m = k+1;m<N;m++) {
	            		if(forSort[k]>forSort[m]) {
	            			int temp = forSort[k];
	            			forSort[k]=forSort[m];
	            			forSort[m]=temp;
	            		}
	            	}
	            }
	            
	            //지정된 인덱스 값 구하고 정답배열에 넣기
	            answer[i]=forSort[commands[i][2]-1];   
	        }	        
	        return answer;
	    }
	}
728x90

댓글