반응형

조건에 맞는걸 중간부터 찾으려고 했음 -> 넘 어려움

배열이 주어지면 배열을 앞에나 뒤부터 순회하는게 젤 나은듯

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

//배열 -> 배열기준순회
반응형

+ Recent posts