-
[2019 카카오 겨울인턴] 호텔방 (JAVA)알고리즘 공부/문제 풀이 2020. 5. 8. 23:22
효율성 구하는데 실패한 문제
해쉬를 재귀적으로 사용함으로써 해결
package kakao; import java.util.*; public class hotelRoom { static Map<Long,Long> rooms=new HashMap<Long,Long>(); static 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]=find(room_number[i])-1; } for(int i=0;i<answer.length;i++)System.out.println(answer[i]); return answer; } static long find(long number) { if(!rooms.containsKey(number)) { rooms.put(number,number+1); return number+1; } else { long temp=find(rooms.get(number)); rooms.put(number,temp); return temp; } } public static void main(String[] args) { long[] rooms={1,3,4,1,3,1}; long[] ans=solution(10,rooms); } }
'알고리즘 공부 > 문제 풀이' 카테고리의 다른 글
[프로그래머스] 정렬 - 가장 큰 수 (1) 2020.08.06 [프로그래머스] 정렬 - k 번째 수 (1) 2020.08.06 [2019 카카오 겨울인턴] 불량사용자 (JAVA) (0) 2020.05.08 [2019 카카오 겨울인턴] 튜플 (JAVA) (0) 2020.05.06 [2019 카카오 겨울인턴] 인형뽑기 (JAVA) (0) 2020.05.06