1 solutions

  • -6
    @ 2024-1-18 17:55:21
    #include<iostream>
    using namespace std;
    int main(){
    	int n;
    	cin>>n;
    	int a[n][n],b[n][n];
    	for(int i=0;i<n;i++)
    	for(int j=0;j<n;j++){
    		char x;
    		cin>>x;
    		if(x=='.')
    		a[i][j]=b[i][j]=1;
    		if(x=='#')
    		a[i][j]=b[i][j]=0;
    		if(x=='@')
    		a[i][j]=b[i][j]=2;
    	}
    	int m;
    	cin>>m;
    	for(int I=1;I<m;I++){
    		for(int i=0;i<n;i++)
    		for(int j=0;j<n;j++)
    		if(a[i][j]==2){
    			if(i+1<n&&b[i+1][j]==1)
    			b[i+1][j]=2;
    			if(i-1>=0&&b[i-1][j]==1)
    			b[i-1][j]=2;
    			if(j+1<n&&b[i][j+1]==1)
    			b[i][j+1]=2;
    			if(j-1>=0&&b[i][j-1]==1)
    			b[i][j-1]=2;
    		}
    		for(int i=0;i<n;i++)
    		for(int j=0;j<n;j++)
    		a[i][j]=b[i][j];
    	}
    	int sum=0;
    	for(int i=0;i<n;i++)
    	for(int j=0;j<n;j++)
    	if(a[i][j]==2)
    	sum++;
    	cout<<sum;
    }
    
    • 1

    Information

    ID
    677
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    7
    Tags
    # Submissions
    18
    Accepted
    8
    Uploaded By