본문 바로가기

백준/Hash & Tree

백준 7785 자바

반응형

백준 HashSet관련 문제인데 전 사전순 역순 출력때문에 TreeSet으로 풀어보았습니다.

 

1.Stringbuilder 사용

import java.io.*;
import java.util.*;
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int T = Integer.parseInt(br.readLine());

        StringBuilder sb = new StringBuilder();
        TreeSet<String> treeSet = new TreeSet<>(Collections.reverseOrder());

        while (T-- > 0) {
            StringTokenizer st = new StringTokenizer(br.readLine());

            String name = st.nextToken();
            String s = st.nextToken();

            if(s.equals("enter")) {
              treeSet.add(name);
            } else {
                treeSet.remove(name);
            }
        }

        for (String val : treeSet) {
            sb.append(val).append('\n');
        }
        System.out.println(sb);
    }
}

 

2. 일반 출력

import java.io.*;
import java.util.*;
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int T = Integer.parseInt(br.readLine());

        TreeSet<String> treeSet = new TreeSet<>(Collections.reverseOrder());

        while (T-- > 0) {
            StringTokenizer st = new StringTokenizer(br.readLine());

            String name = st.nextToken();
            String s = st.nextToken();

            if(s.equals("enter")) {
              treeSet.add(name);
            } else {
                treeSet.remove(name);
            }
        }

        for (String val : treeSet) {
            System.out.println(val);
        }
    }
}

 

결과

- StringBuilder 사용이 더 빠른 것을 보실 수 있습니다.

반응형

'백준 > Hash & Tree' 카테고리의 다른 글

백준 25757 자바  (0) 2022.11.13
백준 22233 자바  (0) 2022.09.01
백준 18294 자바  (0) 2022.08.24
백준 20291 자바  (0) 2022.08.24
백준 10867 자바  (0) 2022.08.23