26069번: 붙임성 좋은 총총이 (acmicpc.net)
26069번: 붙임성 좋은 총총이
첫번째 줄에는 사람들이 만난 기록의 수 $N\ (1 \le N \le 1\ 000)$이 주어진다. 두번째 줄부터 $N$개의 줄에 걸쳐 사람들이 만난 기록이 주어진다. $i + 1$번째 줄에는 $i$번째로 만난 사람들의 이름 $A_i$
www.acmicpc.net
- 무지개 댄스를 추지 않고 있던 사람이 무지개 댄스를 추고 있던 사람을 만나게 된디면, 만난 시점 이후로 무지개 댄스를 추게됨
- 기록이 시작되기 이전 무지개 댄스를 추고 있는 사람은 총총이 뿐이라고 할 때, 마지막 기록 이후 무지개 댄스를 추는 사람이 몇명인지 구하는 프로그램
- 총총이의 이름은 ChongChong으로 주어지며, 기록에서 1회 이상 주어짐
풀이 과정
- 춤을 춘 사람을 저장하는 용도로 HashSet 사용
- ChongChong은 무조건 춤을 추니까 HashSet에 먼저 추가
- StringTokenizer을 통해 공백으로 구분된 문자열이 HashSet에 포함된다면 HashSet에 추가
- HashSet의 크기 출력
정답
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
import java.util.HashSet;
public class Main {
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
HashSet<String> set = new HashSet<String>();
int n = Integer.parseInt(br.readLine());
set.add("ChongChong");
for(int i=0; i<n; i++)
{
StringTokenizer st = new StringTokenizer(br.readLine());
String person = st.nextToken();
String friend= st.nextToken();
if(set.contains(person) || set.contains(friend))
{
set.add(person);
set.add(friend);
}
}
bw.write(set.size()+"");
bw.flush();
bw.close();
}
}
'Java > 백준' 카테고리의 다른 글
[JAVA] 백준 10870 피보나치 수 5 (0) | 2024.02.17 |
---|---|
[JAVA] 백준 20920 영단어 암기는 괴로워 (1) | 2024.02.17 |
[JAVA] 백준 25192 인사성 밝은 곰곰이 (0) | 2024.02.16 |
[JAVA] 백준 1037 약수 (0) | 2024.02.16 |
[JAVA] 백준 1010 다리 놓기 (0) | 2024.02.16 |