ccf 201512 02 (消除类游戏)
作者:
Accepting
,
2020-08-02 23:30:18
,
所有人可见
,
阅读 441
鄙人不才,此中鄙陋甚多,望海涵!!!
水题。。。见代码
#include<iostream>
#include<cstring>
using namespace std;
const int N=40;
int g[N][N],gc[N][N];
int main()
{
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
scanf("%d",&g[i][j]);
memcpy(gc,g,sizeof g);
for(int i=1;i<=n;i++)
{
int cnt=1;
for(int j=1;j<=m;j++)
{
if(g[i][j]==g[i][j+1]) cnt++;
else
{
if(cnt>=3)
{
for(int k=j;k>j-cnt;k--) g[i][k]=0;
}
cnt=1;
}
}
}
for(int j=1;j<=m;j++)
{
int cnt=1;
for(int i=1;i<=n;i++)
{
if(gc[i][j]==gc[i+1][j]) cnt++;
else
{
if(cnt>=3)
{
for(int k=i;k>i-cnt;k--) gc[k][j]=0;
}
cnt=1;
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
g[i][j]=min(g[i][j],gc[i][j]);
printf("%d ",g[i][j]);
}
puts("");
}
return 0;
}
持续更新中,更新完历年1,2题就会更新4,5!