[백준 JAVA] 7785번 풀이 - 회사에 있는 사람
by mini_minimport java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
/**
* 7785번 - 회사에 있는 사람
* 첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다.
* 다음 n개의 줄에는 출입 기록이 순서대로 주어진다.
*
* 요구 : 현재 회사에 있는 사람의 이름을 사전 순의 역순으로 한 줄에 한 명씩 출력한다.
**/
public class Main12 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
HashMap<String, String> map = new HashMap<>();
for ( int i =0; i < n; i++ ){
st = new StringTokenizer(br.readLine());
map.put(st.nextToken(), st.nextToken());
}
StringBuilder sb = new StringBuilder();
List<String> list = new ArrayList<>();
for ( String key_name : map.keySet()){
if ( map.get(key_name).equals("enter")){
list.add(key_name);
}
}
list.sort(Comparator.reverseOrder());
for ( int i= 0; i < list.size(); i++ ){
sb.append(list.get(i) + "\n");
}
System.out.println(sb.toString());
}
}
풀이
HashMap 에 사원들 이름을 key 값으로 put하고, enter 를 값으로 가지고 있는 키 값들만 저장한 리스트를 만들어서 역순 정렬해줬다.
점점 버퍼리더와 스트링토크나이저에 익숙해지고 있다 ㅎㅅㅎ !
'매일매일 알고리즘 공부' 카테고리의 다른 글
[백준 JAVA] 1764번 풀이 - 듣보잡 (0) | 2023.08.22 |
---|---|
[백준 JAVA] 1620번 풀이 - 나는야 포켓몬 마스터 이다솜 (✨적절한 함수를 만드는 연습!!) (0) | 2023.08.19 |
[백준 JAVA] 14425번 풀이 - 문자열 집합 (0) | 2023.08.15 |
[백준 JAVA] 10814번 풀이 - 나이순 정렬 (0) | 2023.08.14 |
[백준 JAVA] 1181번 풀이 - 단어 정렬 (Compare 메서드) (0) | 2023.08.13 |
블로그의 정보
개발자 미니민의 개발로그
mini_min