1013 Battle Over Cities (25)

题目信息

It is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from/toward that city are closed. We must know immediately if we need to repair any other highways to keep the rest of the cities connected. Given the map of cities which have all the remaining highways marked, you are supposed to tell the number of highways need to be repaired, quickly.
For example, if we have 3 cities and 2 highways connecting city1-city2 and city1-city3. Then if city1 is occupied by the enemy, we must have 1 highway repaired, that is the highway city2-city3.
Input
Each input file contains one test case. Each case starts with a line containing 3 numbers N (&lt1000), M and K, which are the total number of cities, the number of remaining highways, and the number of cities to be checked, respectively. Then M lines follow, each describes a highway by 2 integers, which are the numbers of the cities the highway connects. The cities are numbered from 1 to N. Finally there is a line containing K numbers, which represent the cities we concern.
Output
For each of the K cities, output in a line the number of highways need to be repaired if that city is lost.
Sample Input
3 2 3
1 2
1 3
1 2 3
Sample Output
1
0
0

代码

#include<iostream>
using namespace std;
int n;
int city[1010][1010];
bool visited[1010]={false};
void dfs(int node){
    visited[node]=true;
    for(int i=1;i<=n;i++){
        if(city[node][i]==1&&visited[i]==false) dfs(i);
    }
}
int main(){
    int m,k,vi,vj,lost;
    scanf("%d%d%d",&n,&m,&k);
    for(int i=0;i<m;i++){
        scanf("%d%d",&vi,&vj);
        city[vi][vj]=city[vj][vi]=1;
    } 
    for(int i=0;i<k;i++){
        cin>>lost;
        int cnt=0;//cnt为连通分量 
        visited[lost]=true;
        for(int j=1;j<=n;j++){
            if(visited[j]==false){
                dfs(j);
                cnt++;
            }
        }
        printf("%d\n",cnt-1);
        fill(visited,visited+1010,false);
    }
    return 0;
}

测试结果

image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,499评论 0 10
  • 不记得是哪天,被儿子缠着一起看他买的新书。儿子兴致盎然,不忍拒绝,遂一起翻阅。没想到,看后胸闷,久久难释,如鲠在咽...
    潜鲲阅读 396评论 0 0
  • 最近,朋友L和她的一个追求者闹了点矛盾,这是个学霸,L的校友,见识广博,胸有大志,但他有个致命的缺点,颜值不高还矮...
    五月汀兰阅读 986评论 0 0
  • 作为一名海飘,和大多数人一样,每天行走在单位、家以及两者之间的路上。工作的时候忙碌而充实,回家淡定而孤单,而...
    一直流浪的灵魂阅读 600评论 0 50
  • 突然间感觉QQ像似被雪藏了,以前刚出来的版本是多么的疯狂,即使每玩一次登一次都不觉得厌烦!中学时代没时间没钱为了升...
    不喝茶的白开水阅读 286评论 0 0