처음 for문을 두번 돌려서 시간초과가 난 문제
N의 최댓값이 100,000이라서 for문을 한번만 쓰고 해결해야 된다.
이 문제의 핵심 키는 20번쨰 코드이다.
입력받은 점수를 오름차순 정렬했기 때문에 중요한 것은 2번째 인덱스인 면접 점수다.
처음 max_score로 서류심사 점수에서 가장 최고점을 획득한 사람의 면접 점수를 넣어준다.
그 이유는 서류점수의 오름차순 정렬이므로 뒤에 나오는 사람은 이미 서류점수에서 뒤처지는 사람이기 때문에 max_score보다 낮은 점수를 받은 사람은 무조건 탈락이기 때문이다.
여기서 이 max_score보다 높은 점수 즉 숫자가 적은사람이 나타난다면 결과값 result를 +1 해주고 max_score를 교체한다
'알고리즘 문제 > 그리디' 카테고리의 다른 글
[Java] 그리디 (햄버거 분배) (0) | 2023.02.19 |
---|---|
[Java] 그리디 - 최댓값 갱신 (주식) (0) | 2023.02.11 |
그리디 (주사위) (0) | 2022.03.18 |
그리디 (멀티탭 스케줄링) (0) | 2022.01.29 |