문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
알고리즘
좌표 압축
풀이
1. emergency의 값을 내림차순으로 정렬하고 값을 key로, 순서를 value로 map에 삽입한다.
2. emergency의 각 값을 key로 map에서 value를 가져와 저장한다.
코드
import java.util.*;
class Solution {
public int[] solution(int[] emergency) {
HashMap<Integer, Integer> map = new HashMap<>();
int[] answer = new int[emergency.length];
System.arraycopy(emergency, 0, answer, 0, emergency.length);
Arrays.sort(emergency);
for(int i=0; i<emergency.length; i++)
map.put(emergency[i], emergency.length-i);
for(int i=0; i<answer.length; i++)
answer[i] = map.get(answer[i]);
return answer;
}
}
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 개미 군단 (Java) (0) | 2022.10.14 |
---|---|
[프로그래머스] 순서쌍의 개수 (Java) (0) | 2022.10.14 |
[프로그래머스] 외계행성의 나이 (Java) (0) | 2022.10.14 |
[프로그래머스] 문자 반복 출력하기 (Java) (0) | 2022.10.14 |
[프로그래머스] 직각삼각형 출력하기 (Java) (0) | 2022.10.13 |