ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2/24기록 - 백준 7785
    Algorithm 2022. 2. 24. 09:27
    728x90

    오늘의 문제는 백준 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
Designed by Tistory.