https://school.programmers.co.kr/learn/courses/30/lessons/64063
import java.util.HashMap;
import java.util.Map;
class Solution {
Map<Long, Long> map = new HashMap<>();
public long[] solution(long k, long[] room_number) {
long[] answer = new long[room_number.length];
for (int i = 0; i < room_number.length; i++) {
answer[i] = findEmptyRoom(room_number[i]);
}
return answer;
}
long findEmptyRoom(long room) {
if (!map.containsKey(room)) {
map.put(room, room + 1);
return room;
}
long next = map.get(room);
long empty = findEmptyRoom(next);
map.put(room, empty);
return empty;
}
}