markdown 在线制作ppt json校验和格式化工具

POJ 2386

 1 #include<iostream>
 2 #include<stdio.h>
 3 #define MAXN 105
 4 using namespace std;
 5 
 6 char _m[MAXN][MAXN];
 7 bool mark[MAXN][MAXN];
 8 int r;
 9 int c;
10 void is_connect(int i,int j);
11 int main()
12 {
13     //freopen("acm.acm","r",stdin);
14     int i;
15     int j;
16     int num = 0;
17     cin>>r>>c;
18     for(i = 0; i < r; ++ i)
19     {
20         for(j = 0; j < c; ++ j)
21         {
22             cin>>_m[i][j];
23         }
24     }
25 
26     //for(i = 0; i < r; ++ i)
27     //{
28     //    for(j = 0; j < c; ++ j)
29     //        cout<<_m[i][j];
30     //    cout<<endl;
31     //}
32 
33     for(i = 0; i < MAXN; ++ i)
34     {
35         for(j = 0; j < MAXN; ++ j)
36         {
37             
38             if(_m[i][j] == 'W' && !mark[i][j])
39             {
40                 ++ num;
41                 mark[i][j] = true;
42                 is_connect(i,j);
43             }
44         }
45     }
46     cout<<num<<endl;
47         
48 }
49 
50 void is_connect(int i,int j)
51 {
52     if(i > 0 && !mark[i-1][j] && _m[i-1][j] == 'W')
53     {
54         mark[i-1][j] = true;
55         is_connect(i-1,j);        
56     }
57     if(i < r-1 && !mark[i+1][j] && _m[i+1][j] == 'W')
58     {
59         mark[i+1][j] = true;
60         is_connect(i+1,j);
61     }
62     if(j > 0 && !mark[i][j-1] && _m[i][j-1] == 'W')
63     {
64         mark[i][j-1] = true;
65         is_connect(i,j-1);
66     }
67     if(j < c-1 && !mark[i][j+1] && _m[i][j+1] == 'W')
68     {
69         mark[i][j+1] = true;
70         is_connect(i,j+1);
71     }
72     if(i > 0 && j > 0 && !mark[i-1][j-1] && _m[i-1][j-1] == 'W')
73     {
74         mark[i-1][j-1] = true;
75         is_connect(i-1,j-1);
76     }
77     if(i > 0 && j < c-1 && !mark[i-1][j+1] && _m[i-1][j+1] == 'W')
78     {
79         mark[i-1][j+1] = true;
80         is_connect(i-1,j+1);
81     }
82     if(i < r-1 && j > 0 && !mark[i+1][j-1] && _m[i+1][j-1] == 'W')
83     {
84         mark[i+1][j-1] = true;
85         is_connect(i+1,j-1);
86     }
87     if(i < r-1 && j < c-1 && !mark[i+1][j+1] && _m[i+1][j+1] == 'W')
88     {
89         mark[i+1][j+1] = true;
90         is_connect(i+1,j+1);
91     }
92 }

 

posted @ 2015-06-11 10:53  GavinHacker  阅读(188)  评论(0编辑  收藏  举报
markdown 在线制作ppt json校验和格式化工具