-
2/24기록 - 백준 7785Algorithm 2022. 2. 24. 09:27728x90
오늘의 문제는 백준 7785문제 회사에 있는 사람이다.
그냥 문제는 간단하다. enter면 회사로 들어가고, leave면 회사로 나오게 되는데 회사로 들어가서 안나온 사람을 찾아서 이름을 사전순의 역순으로 출력시키면 된다.
이 문제의 핵심은 문제에 써진 "동명이인이 없으며" 라는 문구이다. 이 문구에서 Set이나 Map을 사용하면 되는것을 빠르게 캐치하는 것이 문제의 가장 큰 keyPoint라고 할 수 있다.
알고리즘 생각
1. Set 안에서 enter라면 add, leave라면 remove 시킨다.
2. Set은 정렬이 안되므로 List에 담아서 Collections.sort를 이용하여 정렬시킨다.
3. 개선된 for문을 사용하여 value값으로 List를 담아서 출력시킨다.
이렇게 해결할 수 있었다. 전반적인 알고리즘은 Set을 사용해야 한다는 것만 눈치채면 시간초과가 날 일도 없고 알고리즘도 비교적 간단하다.
마지막에 사전순 역순 정렬의 메소드를 몰라서 이 부분은 구글 검색을 이용했다.
Collections.sort(list, Collections.reverseOrder()) -> 이렇게 사용하면 list를 역순 정렬할 수 있다.
Arrays.sort(arr, Collections.reverseOrder()) -> arr 배열을 역순 정렬할 수 있다.
2/24 기록 끝!!!!!!!!
728x90'Algorithm' 카테고리의 다른 글
3/2기록 - 백준 9655 (0) 2022.03.02 2/28 기록 - 백준 9237 (0) 2022.02.28 2/23기록 - 백준 4796 (0) 2022.02.23 2/22기록 - 백준 1476 (0) 2022.02.22 2/21기록 - 백준 1969 (0) 2022.02.21