알고리즘 문제풀이/백준

#1764 : 듣보잡

모항 2022. 1. 21. 02:54

풀이방법

사용된 것:

HashSet

집합 안에 특정 요소가 존재하는지 여부를 빠르게 파악하기 위해 사용하였다.

TreeSet

요소 추가가 편리하고 자동으로 요소들을 정렬해주기 때문에 사용하였다.

 

2022.01.21

듣도 못한 사람들의 이름을 HashSet<String> set1에 저장한다.

보도 못한 사람들의 이름을 하나씩 읽어오면서, set1에 포함되어있는 이름일 경우에만 TreeSet<String> set2에 저장한다.

set2의 크기를 화면에 출력한다.

set2의 크기가 0이 아닐 경우, set2의 요소들을 forEach를 사용하여 화면에 순서대로 출력한다.

 

코드

Java(2022.01.21)

import java.io.*;
import java.util.HashSet;
import java.util.TreeSet;

public class Main {

	public static void main(String[] args) throws IOException{
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		String[] temp = br.readLine().split(" ");
		int[] nums = new int[2];
		for(int i = 0; i<2; i++) {
			nums[i] = Integer.parseInt(temp[i]);
		}
		
		HashSet<String> set1 = new HashSet<String>();
		TreeSet<String> set2 = new TreeSet<String>();
		
		for(int i = 0; i<nums[0]; i++) {
			set1.add(br.readLine());
		}
		String str;
		for(int i = 0; i<nums[1]; i++) {
			str = br.readLine();
			if(set1.contains(str)) {
				set2.add(str);
			}
		}
		
		System.out.println(set2.size());
		if(set2.size() != 0) {
			set2.forEach(System.out::println);;
		}
		
	}

}

'알고리즘 문제풀이 > 백준' 카테고리의 다른 글

#2747 : 피보나치 수  (0) 2022.01.22
#11048 : 이동하기  (0) 2022.01.22
#11091 : 알파벳 전부 쓰기  (0) 2022.01.21
#6996 : 애너그램  (0) 2022.01.21
#4583 : 거울상  (0) 2022.01.19