2 solutions

  • 1
    @ 2024-4-18 13:30:06
    #include<iostream>
    #include<string>
    using namespace std;
    int x[8]={-1,1,0,0,1,-1,-1,1};
    int y[8]={0,0,-1,1,1,-1,1,-1};
    char a[1000][1000];
    int us[1000][1000],n,m,ans=0;
    void dfs(int q,int w)
    {
    	us[q][w]=1;
    	for(int i=0;i<8;i++)
    	{
    		if(q+x[i]>=0 && q+x[i]<n && w+y[i]>=0 && w+y[i]<m && us[q+x[i]][w+y[i]]==0 && a[q+x[i]][w+y[i]]=='W')
    		{
    			dfs(q+x[i],w+y[i]);
    		}
    	}
    }
    int main()
    {
    	string s;
    	cin>>n>>m;
    	for(int i=0;i<n;i++)
    	{
    		cin>>s;
    		for(int j=0;j<m;j++)
    		{
    			us[i][j]=0;
    			a[i][j]=s[j];
    		}
    	}
    	for(int i=0;i<n;i++)
    	{
    		for(int j=0;j<m;j++)
    		{
    			if(us[i][j]==0 && a[i][j]=='W')
    			{
    				ans++;
    				dfs(i,j);
    			}
    		}
    	}
    	cout<<ans;
    	return 0;
    }
    
    • 0
      @ 2024-4-11 13:04:40
      #include<iostream>
      #include<string>
      using namespace std;
      int x[8]={-1,1,0,0,1,-1,-1,1};
      int y[8]={0,0,-1,1,1,-1,1,-1};
      char a[1000][1000];
      int us[1000][1000],n,m,ans=0;
      void dfs(int q,int w)
      {
      	us[q][w]=1;
      	for(int i=0;i<8;i++)
      	{
      		if(q+x[i]>=0 && q+x[i]<n && w+y[i]>=0 && w+y[i]<m && us[q+x[i]][w+y[i]]==0 && a[q+x[i]][w+y[i]]=='W')
      		{
      			dfs(q+x[i],w+y[i]);
      		}
      	}
      }
      int main()
      {
      	string s;
      	cin>>n>>m;
      	for(int i=0;i<n;i++)
      	{
      		cin>>s;
      		for(int j=0;j<m;j++)
      		{
      			us[i][j]=0;
      			a[i][j]=s[j];
      		}
      	}
      	for(int i=0;i<n;i++)
      	{
      		for(int j=0;j<m;j++)
      		{
      			if(us[i][j]==0 && a[i][j]=='W')
      			{
      				ans++;
      				dfs(i,j);
      			}
      		}
      	}
      	cout<<ans;
      	return 0;
      }
      
      • 1

      Information

      ID
      734
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      10
      Tags
      # Submissions
      4
      Accepted
      3
      Uploaded By