티스토리 뷰

알고리즘/백준

백준 13701 (중복 제거) - java

김다미김태리신시아 2023. 7. 5. 17:05

https://www.acmicpc.net/problem/13701

 

13701번: 중복 제거

문제: N개의 정수 A1, A2, ..., AN 을 읽고, 이들 중에서 반복되는 수를 제외하고 남은 N'개의 수 B1, B2, ..., BN’ 을 입력된 순서대로 출력하시오. 이때, 0 ≤ Ai < 225 = 33554432, i=1,2,…,N. 입력의 개수 N은 1

www.acmicpc.net

import java.io.*;
import java.util.*;

public class Main {
    static LinkedHashSet<Integer> set = new LinkedHashSet<>();

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine()," ");

        while(st.hasMoreTokens())
        {
            int num = Integer.parseInt(st.nextToken());
            set.add(num);
        }

        StringBuilder sb = new StringBuilder();
        for(int cur : set)
        {
            sb.append(cur+" ");
        }

        System.out.println(sb);
        br.close();
    }
}

시간을 줄이기 위해서는 자바의 BitSet을 사용하면 된다.