์กฐ๊ฑด์์์ k ๋ณด๋ค ํฌ๋ฉด์ !! ๊ฐ์ฅ ์์ !! << ์ด ์กฐ๊ฑด์ ๋ง๋ค์ง ๋ชปํด์ ๋ค๋ฅธ ์ฝ๋๋ฅผ ์ฐธ๊ณ ํ๋ค. ๐ญ๐ญ
์ต์๊ฐ ๊ตฌํ๋ ์๊ณ ๋ฆฌ์ฆ๋ ๋ฃ์ด๋ณด๋ฉด์ ํด๋ดค์ง๋ง ์ด๋์ ์กฐ๊ฑด์ด ์๋ง๋์ง ์๊พธ ์ค๋ฅ๊ฐ ๋ฌ๋ค..
๋ค๋ฅธ๊ฑฐ ์ฐธ๊ณ ํ ๊น ๊ณ์ ๊ณ ๋ฏผํ๋ค๊ฐ ํ๋ฒ ํด๋ณด์ ํ์ง๋ง ... ์๊ฐ ์์ฒญ ๋ ๋ฆฐ .... ๐ญ๐ญ
๐คฎ ์คํจํ ์ฝ ๋
class Solution {
public int[] solution(int[] arr, int[][] queries) {
int[] answer = new int[queries.length]; //3
int num = 0;
for (int i = 0 ; i < queries.length; i++){ //0~2
for (int j = arr[(queries[i][num])]; j < arr[(queries[i][num+1])]; j++){
//0~4
if (arr[j] > arr[queries[i][num+2]]){ // 2 ํฌ๊ณ ์ ์ผ ์์ ๊ฐ
answer[i] = arr[j];
}
else {
answer[i] = -1;
}
}
}
return answer;
}
}
import java.util.ArrayList;
import java.util.Arrays;
public class Solution {
public static int[] solution(int[] arr, int[][] queries) {
int[] answer = new int[queries.length];
Arrays.fill(answer, -1); // ์ด๊ธฐ๊ฐ์ผ๋ก -1์ ์ฑ์๋์ต๋๋ค.
for (int i = 0; i < queries.length; i++) {
int s = queries[i][0];
int e = queries[i][1];
int k = queries[i][2];
int minGreaterValue = Integer.MAX_VALUE; // ์ต์๊ฐ์ ์ ์ฅํ ๋ณ์, ์ผ๋จ ์ต๋๊ฐ์ผ๋ก ์ด๊ธฐํํฉ๋๋ค.
for (int j = s; j <= e; j++) {
if (arr[j] > k && arr[j] < minGreaterValue) {
minGreaterValue = arr[j];
}
}
if (minGreaterValue != Integer.MAX_VALUE) {
answer[i] = minGreaterValue;
}
}
return answer;
}
}
๊ฐํธํ๊ฒ ์ด๊ธฐ๊ฐ์ -1๋ก ์ฑ์๋ฃ๊ณ
k ๋ณด๋ค ํฌ๋ฉด์ ๊ฐ์ฅ ์์ ๊ฐ => if (arr[j] > k && arr[j] < minGreaterValue)
min ๊ฐ์ ์ต๋๊ฐ์ผ๋ก ์ง์ ํด์ ํ๋์ฉ ๋น๊ตํ๋ค.
๐ฌ Integer.MAX_VALUE : Integer.MAX_VALUE๋ ์๋ฐ์์ ์ ์ํ(int) ๋ณ์๊ฐ ๊ฐ์ง ์ ์๋ ์ต๋๊ฐ์ ๋ํ๋ด๋ ์์์ ๋๋ค. ์ด ๊ฐ์ 2^31 - 1, ์ฆ 2,147,483,647