반응형
조건에 맞는걸 중간부터 찾으려고 했음 -> 넘 어려움
배열이 주어지면 배열을 앞에나 뒤부터 순회하는게 젤 나은듯
import java.util.*;
class Solution {
public int solution(int[] citations) {
int h = citations.length;
Arrays.sort(citations);
/*배열 순회하기
for(int c : citations){
if(c >= h){
return h;
}else{
h -= 1;
}
}
return h;
*/
//길이기준 순회
int index = 0;
for(int i=h;i>0;i--){
if(citations[index] >= i){
return i;
}else{
index +=1;
}
}
return 0;
}
}
//,0,0]
//h=3 index=0;
//h=2 index 1;
//h=1
//길이 7
//[1,2,3,5,6,7,8]
//뒤에부터
//h = 7 일때 index[0] 1 의 값이 7이상이냐?
//h = 6 일때 index[1] 2 의 값이 6이상이냐?
//h = 5 일때 index[2] 3 의 값이 5 이상이냐?
//h= 4 일때 index[3] 5의 값이 4 이상이냐? -> h반환
//index[0] 일때 h=len index[]의 값이 h 이상이냐?
//index[1]일때 h= len-1
//배열 -> 배열기준순회
반응형
'코딩 관련 > 코딩문제풀기' 카테고리의 다른 글
[프로그래머스] 개인정보 수집 유효기간 (0) | 2024.10.21 |
---|---|
[프로그래머스] 신고 결과 받기 (0) | 2024.10.17 |
[프로그래머스] 둘만의 암호 (0) | 2024.10.09 |
[프로그래머스] 키패드 누르기 (0) | 2024.10.09 |
[프로그래머스] 문자열 나누기 (0) | 2024.10.06 |