import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

class Location5567{
	int idx;
	
	public Location5567(int idx) {
		// TODO Auto-generated constructor stub
		this.idx = idx;
	}
}

public class Main {

	static int n;
	static int m;
	static int[][] friendsMap;
	static int[] visit;
	static Queue<Integer> q = new LinkedList<Integer>();
	static int friendsCnt =0;
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		m = sc.nextInt();
		friendsMap = new int[n+1][n+1];
		visit = new int[n+1];
		
		for(int i=0;i<m;i++) {
			int a = sc.nextInt();
			int b = sc.nextInt();
			
			friendsMap[a][b] = 1;
			friendsMap[b][a] = 1;
			
			if(a == 1) {
				q.add(b);
				visit[b] =1;
			}
		}
		
		getBfs();
		
		for(int i=1;i<n+1;i++) {
			if(visit[i] == 1) {
				friendsCnt++;
			}
		}
		System.out.println(friendsCnt);
	}

	public static void getBfs() {
		while(!q.isEmpty()) {
			int idx = q.poll();
			visit[idx] =1;
			
			for(int j=2;j<=n;j++) {
				if(friendsMap[idx][j] == 1 && visit[j] == 0) {
					visit[j] = 1;
				}
			}		
		}
	}
}
반응형

'알고리즘 > Baekjoon' 카테고리의 다른 글

[Baekjoon] #4781 사탕 가게  (0) 2024.04.18
[Baekjoon] #5054 주차의 신  (0) 2024.04.18
[Baekjoon] #9251 LCS  (0) 2024.04.08
[Baekjoon] #9328 열쇠  (0) 2024.04.08
[Baekjoon] #9461 파도반 수열  (0) 2024.04.08

+ Recent posts