EH헌 2024. 2. 6. 22:46

풀이

import java.util.*;

class Solution {
    public int[] solution(int N, int[] stages) {

    Map<Integer, Double> map = new HashMap<>();
    for (int i = 1; i <= N; i++) {
        double total = 0;
        double fail = 0;
        for (int j = 0; j < stages.length; j++) {
            if(i <= stages[j]) total++;
            if(i == stages[j]) fail++;
        }
        if(total == 0 && fail == 0) total = 1;
        map.put(i, fail/total);
    }

    int[] answer = new int[N];
    for (int i = 0; i < N; i++) {
        double max = -1;
        int rKey = 0;
        for (int key : map.keySet()){
            if(max < map.get(key)){
                max = map.get(key);
                rKey = key;
            }
        }
        answer[i] = rKey;
        map.remove(rKey);
    }

    return answer;

    }
}

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr