인사고과

Lee1231234·2023년 5월 17일

코딩테스트

목록 보기
55/95

중요점은 두 값이 모두 낮은경우 그 사원은 인센티브를 받지못함.

그렇다면 하나는 가장 높은값으로 하나는 가장 낮은값으로 정렬해서 그 사이에 모두 낮은 경우가 걸리는 경우를 제외하면 자신의 등수를 알수있다.

코드

import java.util.*;
class Solution {
    public int solution(int[][] scores) {
        int mySum = scores[0][0]+scores[0][1];
        int[] myScore = scores[0];     
        int count=0,answer=1;
        Arrays.sort(scores,(o1,o2)->{
            if(o2[0]==o1[0]){
                return o1[1]-o2[1];
            }else{
                return o2[0]-o1[0];
            }         
        });
      
        for(int i=0;i<scores.length;i++){    
           
            if(scores[i][1]<count){
                if(Arrays.equals(scores[i],myScore)) return -1;
            }else{
                count=Math.max(count,scores[i][1]);                
                if(scores[i][0]+scores[i][1]>mySum)answer++;                                
            }
            
        }
      
        
        return answer;
    }
}
profile
not null

0개의 댓글