码迷,mamicode.com
首页 > 其他好文 > 详细

PAT 甲级 1013 Battle Over Cities

时间:2017-06-24 19:51:18      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:scan   tle   define   str   main   string   ring   stream   ==   

 1 #include <iostream>
 2 #include <cstring>
 3 #include <cstdio>
 4 #define MAX 1001
 5 int a[MAX][MAX];
 6 int visited[MAX];
 7 int n, m, k;
 8 
 9 using namespace std;
10 
11 int dfs(int x)
12 {
13     visited[x]=1;
14     for (int i=1; i<=n; i++)
15     {
16         if (!visited[i]&&a[x][i]==1)
17         {
18             dfs(i);
19         }
20     }
21 }
22 int main()
23 {
24     scanf ("%d%d%d", &n, &m, &k);
25     for (int i=0; i<m; i++)
26     {
27         int x, y;
28         scanf ("%d%d", &x, &y);
29         a[x][y] = 1;
30         a[y][x] = 1;
31     }
32     for (int i=0; i<k; i++)
33     {
34         int mm;
35         scanf ("%d", &mm);
36         visited[mm]=1;
37 
38         int ans=0;
39 
40         for (int j=1; j<=n; j++)
41         {
42             if (!visited[j])
43             {
44                 dfs(j);
45                 ans++;
46             }
47         }
48         cout <<ans-1 <<endl;
49         memset(visited, 0, sizeof(visited));
50     }
51     return 0;
52 }

 

PAT 甲级 1013 Battle Over Cities

标签:scan   tle   define   str   main   string   ring   stream   ==   

原文地址:http://www.cnblogs.com/GrayArchimage/p/7074137.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!