728x90
๋ฐ์ํ
๋ฌธ์ ๐ต๐ซ
https://school.programmers.co.kr/learn/courses/30/lessons/42748
๋ด ํ๐ฆท
import java.util.*;
class Solution {
public int[] solution(int[] array, int[][] commands) {
int[] answer = new int[commands.length];
for(int i = 0; i < commands.length; i++) {
int start = commands[i][0] -1;
int end = commands[i][1];
int k = commands[i][2] - 1;
// ๋ฐฐ์ด์ ํน์ ๊ตฌ๊ฐ์ ๋ณต์ฌํ๊ณ ์ ๋ ฌ
int[] arr = Arrays.copyOfRange(array, start, end);
Arrays.sort(arr);
// k๋ฒ์งธ ์ซ์๋ฅผ ๊ฒฐ๊ณผ ๋ฐฐ์ด์ ์ถ๊ฐ
answer[i] = arr[k];
}
return answer;
}
}
์ค๋๋ง์ ํ์ด๋ณด๋ ์ ๋ ฌ๋ฌธ์ ๋ผ ๊ฐ๋จํ ๋ฌธ์ ์ง๋ง ๋นํฉํ๋ค ใ ใ
์ด๋ป๊ฒ ๋ฐฐ์ด์ ๊ฐ์ ธ์ค๋๊ฒ์ด ์ข์์ง for๋ฌธ ๋๋ฉด์ ์๋ก์ด ๋ฐฐ์ด์ ๋ง๋ค์ด์ ๋ฃ์ด์ค๊นํ๋๋ฐ ์ฐพ์๋ณด๋ copyOfRange๋ผ๋ ๋ฐฐ์ด ๋ณต์ฌ ๋ฉ์๋๊ฐ ์กด์ฌํ์ฌ ์ฌ์ฉํด์ ์ฐ๋๊น ๊ธ๋ฐฉ ํด๊ฒฐ !!!
copyOfRange ๊ผญ ๊ธฐ์ตํด ๋๊ฒ ์~
์ฐธ๊ณ ํ๋ฉด ์ข์ ๊ฐ๋ ๋ค โ๏ธ
Arrays.copyOfRange(์๋ณธ๋ฐฐ์ด, ์์์ธ๋ฑ์ค, ๋์ธ๋ฑ์ค);
์๋ณธ๋ฐฐ์ด : ๋ณต์ฌํ๋ ค๋ ๋ฐฐ์ด
์์ ์ธ๋ฑ์ค : ๋ณต์ฌ๋ฅผ ์์ํ ์ธ๋ฑ์ค(ํฌํจ)
๋์ธ๋ฑ์ค : ๋ณต์ฌ๋ฅผ ์ข
๋ฃํ ์ธ๋ฑ์ค(๋ฏธํฌํจ)
int[] array = {1, 5, 2, 6, 3, 7, 4};
int[] slicedArray = Arrays.copyOfRange(array, 1, 5); // {5, 2, 6, 3}
728x90
๋ฐ์ํ
'algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ๋ชจ์๊ณ ์ฌ (java) (1) | 2024.11.24 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค - ํ๊ฒ๋๋ฒ (java) (0) | 2024.11.11 |
[ํ๋ก๊ทธ๋๋จธ์ค] 3์ง๋ฒ ๋ค์ง๊ธฐ(JAVA) (1) | 2024.05.01 |
๋ฐฑ์ค 1446. ์ง๋ฆ๊ธธ(๋ค์ต์คํธ๋ผ) (0) | 2023.10.27 |
๋ฐฑ์ค 1644. ์์์ ์ฐ์ํฉ(ํฌ ํฌ์ธํฐ, ์์ ๊ตฌํ๊ธฐ) (2) | 2023.10.25 |