CCF20151202——消除类游戏
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m,a[31][31],t[31][31]={0};
cin>>n>>m;
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
cin>>a[i][j];
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m-2;j++)
{
if(a[i][j]==a[i][j+1]&&a[i][j]==a[i][j+2])//查找行相同的三个及以上标记为1
t[i][j]=t[i][j+1]=t[i][j+2]=1;
}
}
for(int j=0;j<m;j++)
{
for(int i=0;i<n-2;i++)
{
if(a[i][j]==a[i+1][j]&&a[i][j]==a[i+2][j])//查找列相同的三个及以上标记为1
t[i][j]=t[i+1][j]=t[i+2][j]=1;
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(t[i][j])
a[i][j]=0;
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}