Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2019
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.48 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string>
  3. #include<iostream>
  4. #include<string.h>
  5. using namespace std;
  6. char a[110][110];
  7. int di[8]={0,0,1,1,1,-1,-1,-1};
  8. int dj[8]={1,-1,0,1,-1,0,1,-1};
  9. int ans;
  10. bool check[100][100];
  11. void dfs(int i,int j){
  12.   ans++;
  13.   check[i][j]=true;
  14.   for(int k=0;k<8;k++){
  15.     int x=i+di[k];
  16.     int y=j+dj[k];
  17.     if(x<0 || y<0) continue;
  18.     if(!check[x][y] && a[x-1][y-1] == 'W'){
  19.       dfs(x,y);
  20.     }
  21.   }
  22. }
  23. int main()
  24. {
  25.   int col=0;
  26.   int n,m,k; // in sample is 9 9 2
  27.   //scanf("%d%d%d",&n,&m,&k);
  28.   char inp[100];
  29.   while(gets(inp) && strlen(inp) >0){
  30.     if(inp[0] != 'W' && inp[0] != 'L'){
  31.         int u,v;
  32.         sscanf(inp,"%d %d",&u,&v);
  33.         ans=0;
  34.         if(a[u-1][v-1]== 'W'){
  35.           dfs(u,v);
  36.           printf("%d\n",ans);
  37.         }
  38.       else printf("0\n");
  39.       for(int i=0;i<100;i++) for(int j=0;j<100;j++) check[i][j]=false;
  40.     }
  41.     else{
  42.         strcpy(a[col],inp);
  43.         col++;
  44.     }
  45.   }
  46.   /*int u,v;
  47.   u=a[last][0]-'0'; v=a[last][2]-'0';
  48.   ans=0;
  49.     //scanf("%d%d",&u,&v);
  50.     if(a[u-1][v-1]=='W'){
  51.       dfs(u,v);
  52.       printf("%d\n",ans);
  53.     }
  54.     else printf("0");
  55.     for(int i=0;i<100;i++) for(int j=0;j<100;j++) check[i][j]=false;
  56.   while(scanf("%d%d",&u,&v) != EOF){
  57.     ans=0;
  58.     //scanf("%d%d",&u,&v);
  59.     if(a[u-1][v-1]=='W'){
  60.       dfs(u,v);
  61.       printf("%d\n",ans);
  62.     }
  63.     else printf("0\n");
  64.     for(int i=0;i<100;i++) for(int j=0;j<100;j++) check[i][j]=false;
  65.   }*/
  66.   return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement