Patrick_Liu_Bingxian @ 2023-12-03 20:04:49
#include<iostream>
using namespace std;
struct node{
int num,b;
}a[1001][1001];
int main(){
int n,m,ic,jc,sum=0;
cin>>n>>m;
for(int i=0;i<=1000;i++)
for(int j=0;j<=1000;j++){
a[i][j].b=0;
a[i][j].num=2;
}
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++){
cin>>a[i][j].num;
a[i][j].b=0;
}
for(int i=1;i<=m;i++){
cin>>ic>>jc;
a[ic][jc].b=1;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j].b==1){
if(a[i+1][j].num!=2&&a[i+1][j].num!=a[i][j].num){
a[i+1][j].b=1;
}
if(a[i-1][j].num!=2&&a[i-1][j].num!=a[i][j].num&&a[i-1][j].num!=-1){
a[i-1][j].b=1;
i=i-2;
break;
}
if(a[i][j+1].num!=2&&a[i][j+1].num!=a[i][j].num){
a[i][j+1].b=1;
}
if(a[i][j-1].num!=2&&a[i][j-1].num!=a[i][j].num&&a[i-1][j].num!=-1){
a[i][j-1].b=1;
j=j-2;
}
a[i][j].b=-1;
}
}
}
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++){
if(a[i][j].b==-1)
sum++;
}
cout<<sum<<'\n';
sum=0;
a[ic][jc].b=0;
}
return 0;
}
RE求助!!!赏关