반응형

codeup 4503 바이러스

코드업 4503 바이러스

https://codeup.kr/problem.php?id=4503 

 

바이러스

1번 컴퓨터가 웜 바이러스에 걸렸을 때, 1번 컴퓨터를 통해 웜 바이러스에 걸리게 되는 컴퓨터의 수를 첫째 줄에 출력한다.

codeup.kr

 

#include <stdio.h>
#include <stdlib.h>

int map[101][101] = {};
int n,m;
int answer = 0;
int visit[101] = {};

//x 한테 연결된 애들 다 찾는다
void f(int x){
    for(int i = 1; i <= n; ++i){
       if(map[x][i] == 0) continue;
       if(visit[i] == 1) continue;
        visit[i] = 1;
        //printf("V ::: %d\n", i);
        ++answer;
        f(i);
    }
}

int main(){

    scanf("%d", &n);
    scanf("%d", &m);

    int a,b;
    for(int i = 0; i < m; ++i){
        scanf("%d %d", &a, &b);
        map[a][b] = 1;
        map[b][a] = 1;
    }

    //set complete

    f(1);

    printf("%d", answer-1); //1번 컴퓨터는 제외

    return 0;
}
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기