Problem Type : Game
#include<stdio.h>
#include<string.h>
#define max 100
int x1[] = {-1, -1, -1, 0, 1, 1, 1, 0};
int y[] = {-1, 0, 1, 1, 1, 0, -1, -1};
int main()
{
int i,j,k,l,m,n,test,x,p,q,num,cou=0;
char mat[max][max],mat1[max][max],des[max][max];
scanf("%d",&test);
while(test--)
{
if(cou!=0)
printf("\n");
cou++;
scanf("%d",&n);
getchar();
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf(" %c",&mat[i][j]);
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf(" %c",&des[i][j]);
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
mat1[i][j]='.';
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
num=0;
if(mat[i][j]=='.' && des[i][j]=='x')
{
for(k=0; k<8; k++)
{
p=i+x1[k];
q=j+y[k];
if ( p >= 0 && p < n && q >= 0 && q < n)
{
if (mat[p][q] == '*')
{
++num;
}
}
}
mat1[i][j] = num+48;
}
if(mat[i][j]=='*' && des[i][j]=='x')
{
for (int s = 0; s < n; s++)
{
for (int t = 0; t < n; t++)
{
if (mat[s][t] == '*')
{
mat1[s][t] = '*';
}
}
}
}
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
printf("%c",mat1[i][j]);
}
printf("\n");
}
memset(mat,'\0',sizeof(mat));
memset(des,'\0',sizeof(des));
}
}
#include<stdio.h>
#include<string.h>
#define max 100
int x1[] = {-1, -1, -1, 0, 1, 1, 1, 0};
int y[] = {-1, 0, 1, 1, 1, 0, -1, -1};
int main()
{
int i,j,k,l,m,n,test,x,p,q,num,cou=0;
char mat[max][max],mat1[max][max],des[max][max];
scanf("%d",&test);
while(test--)
{
if(cou!=0)
printf("\n");
cou++;
scanf("%d",&n);
getchar();
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf(" %c",&mat[i][j]);
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf(" %c",&des[i][j]);
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
mat1[i][j]='.';
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
num=0;
if(mat[i][j]=='.' && des[i][j]=='x')
{
for(k=0; k<8; k++)
{
p=i+x1[k];
q=j+y[k];
if ( p >= 0 && p < n && q >= 0 && q < n)
{
if (mat[p][q] == '*')
{
++num;
}
}
}
mat1[i][j] = num+48;
}
if(mat[i][j]=='*' && des[i][j]=='x')
{
for (int s = 0; s < n; s++)
{
for (int t = 0; t < n; t++)
{
if (mat[s][t] == '*')
{
mat1[s][t] = '*';
}
}
}
}
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
printf("%c",mat1[i][j]);
}
printf("\n");
}
memset(mat,'\0',sizeof(mat));
memset(des,'\0',sizeof(des));
}
}
No comments:
Post a Comment