반응형
https://www.acmicpc.net/problem/26069
- 문제
- 문제 풀이
백준 26069번 붙임성 좋은 총총이는 실버 4 난이도의 자료 구조 및 해시 문제이다. 이 문제에서는 N개의 사람들이 만난 기록이 주어지고, 각 기록에는 두 명씩 있다. 그리고, 춤을 추고 있지 않은 사람이 춤을 추고 있는 사람을 만나게 되면 그 사람도 춤을 추게 된다. 처음에는 총총이만 (ChongChong) 춤을 추고 있다. 이때, 마지막에 총 몇 명의 사람이 춤을 추었는지를 구하면 된다.
이 문제는 되게 간단하다. 우선 HashSet를 만들어준다. 이 HashSet에는 춤을 춘 사람을 저장하는 용도로 사용한다. 처음에 총총이를 추가해 준다.
문제에서 주어지는 기록에는 2명이 있다. 만약에, 이 두 명 중에 한 사람이라도 이 HashSet에 있으면, 두 명 다 HashSet에 넣어준다. HashSet는 중복된 데이터를 저장하지 않으므로, 두 명 다 넣어도 된다. 그리고, 마지막에 이 HashSet의 크기만 출력해 주면 된다.
자세한 코드는 아래에 있는 코드를 참고하면 되겠다.
- 코드
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 n = Integer.parseInt(br.readLine());
Set<String> set = new HashSet<>();
set.add("ChongChong"); //총총이는 무조건 나오므로 추가
StringTokenizer st;
for (int i = 0; i < n; i++) {
st = new StringTokenizer(br.readLine());
String person1 = st.nextToken();
String person2 = st.nextToken();
//춤을 추고 있는 사람을 만나면 춤을 추게 되므로 세트에 추가
if (set.contains(person1) || set.contains(person2)) {
set.add(person1);
set.add(person2);
}
}
System.out.println(set.size());
}
}
반응형
'백준' 카테고리의 다른 글
[백준] 25192번 : 인사성 밝은 곰곰이 – JAVA [자바] (0) | 2023.07.26 |
---|---|
[백준] 5568번 : 카드 놓기 – JAVA [자바] (0) | 2023.07.26 |
[백준] 2910번 : 빈도 정렬 – JAVA [자바] (0) | 2023.07.25 |
[백준] 20291번 : 파일 정리 – JAVA [자바] (0) | 2023.07.18 |
[백준] 1351번 : 무한 수열 – JAVA [자바] (0) | 2023.07.16 |
댓글