본문 바로가기
문제풀이/프로그래머스

K번째수 / 프로그래머스 연습문제 / programmers / level1 / Java

by RUCKUS 2021. 5. 1.

programmers.co.kr/learn/courses/30/lessons/42748

 

코딩테스트 연습 - K번째수

[1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3]

programmers.co.kr

이번 문제도 배열 관련 문제다.

인덱스에 개념에 대해서 잘 알고 있으면?? 크게 어렵지 않게 풀 수 있는 것 같다.

 

작성 코드

	public static int[] solution(int[] array, int[][] commands) {
		int[] answer = new int [commands.length];
		// 입력할 명령문의 횟수 만큼 정답 배열 길이 선언
			
		System.out.println(Arrays.toString(array));
		System.out.println(Arrays.deepToString(commands));
		
		
			for (int i = 0; i < commands.length; i++) {
				
					int [] temp = null;
					temp = Arrays.copyOfRange(array, commands[i][0]-1, commands[i][1]);
					//copyOfRange(복사해올 배열 객체, 복사할 인덱스 시작점, 복사할 인덱스 종료점)
					System.out.println(Arrays.toString(temp));
					Arrays.sort(temp);
					System.out.println(Arrays.toString(temp));
					
					answer[i] = temp[commands[i][2]-1];
					// 명령문의 2번지에 있는 숫자만큼의 인덱스 값을 배열의 인덱스 값으로 넣어서 정답 배열에 넣어주기
					System.out.println(temp[commands[i][2]-1]);
				
			}
		System.out.println(Arrays.toString(answer));
		return answer;
	}

평균 0.04초

 

더 화이팅하자!!

 


[깃허브]

https://github.com/RUCKUSJERRY/practiceOfJava/blob/main/Prs_Pratice/src/com/level01/knumber.java

 

RUCKUSJERRY/practiceOfJava

Contribute to RUCKUSJERRY/practiceOfJava development by creating an account on GitHub.

github.com