삐까냥의 파도타기

5567번) 결혼식 - 그래프 본문

코딩/백준 알고리즘

5567번) 결혼식 - 그래프

금손형아 2017. 10. 28. 15:17

문제 출처 : https://www.acmicpc.net/problem/5567



import java.util.HashSet;

import java.util.Scanner;


public class Q5567 {


public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

sc.nextInt();

int num = sc.nextInt();

int[][] relationShip = new int[num][2];

HashSet<Integer> friendList = new HashSet<Integer>();

for ( int i = 0 ; i < num; i++ ) {

int temp1 = sc.nextInt();

int temp2 = sc.nextInt();

if ( temp1 == 1 ) {

friendList.add(temp2);

num -= 1;

i -= 1;

} else {

relationShip[i][0] = temp1;

relationShip[i][1] = temp2;

}

}

HashSet<Integer> friendOfFriendList = new HashSet<Integer>();

for ( int i = 0 ; i < num; i++ ) {

int temp = relationShip[i][0];

if ( friendList.contains(temp) ) { //친구의 친구

friendOfFriendList.add(relationShip[i][1]);

}

temp = relationShip[i][1];

if ( friendList.contains(temp) ) { //친구의 친구

friendOfFriendList.add(relationShip[i][0]);

}

}

friendList.addAll(friendOfFriendList);

System.out.println(friendList.size());

}

}


'코딩 > 백준 알고리즘' 카테고리의 다른 글

14889번) 스타트와 링크  (0) 2017.10.28
1507번) 궁금한 민호  (0) 2017.10.28
1068번) 트리 - 그래프  (0) 2017.10.28
4963번) 섬의 개수 - 그래프  (0) 2017.10.28
1700번) 멀티탭 스케줄링 - 그리디  (0) 2017.10.27