• uva minesweep 水题


    格式控制那块,用cin输入,输出的时候有问题,但不知道为什么能过

    不知道是不是我理解错了

    #include <cstdio>
    #include <iostream>
    using namespace std;
    
    char a[102][102];
    
    int n,m;
    
    int add(int q,int p)
    {
    	int mines=0;
    
    	if(a[q][p]=='*')
    		return -1;
    
    	if(q-1>=0&&a[q-1][p]=='*')mines++;
    	if(q-1>=0&&p-1>=0&&a[q-1][p-1]=='*')mines++;
    	if(p-1>=0&&a[q][p-1]=='*')mines++;
    	if(q+1<n&&a[q+1][p]=='*')mines++;
    	if(p+1<m&&a[q][p+1]=='*')mines++;
    	if(q+1<n&&p+1<m&&a[q+1][p+1]=='*')mines++;
    	if(q+1<n&&p-1>=0&&a[q+1][p-1]=='*')mines++;
    	if(q-1>=0&&p+1<m&&a[q-1][p+1]=='*')mines++;
    
    	return mines;
    }
    
    int main()
    {
    	int k;
    
    	int b[102][102];
    
    	int i,j;
    	k=1;
    
    	while(scanf("%d%d",&n,&m),!(n==0&&m==0))
    	{
    		for(i=0;i<n;i++)
    		{
    			for(j=0;j<m;j++)
    			{
    				cin>>a[i][j];
    			}
    		}		
    
    		for(i=0;i<n;i++)
    		{
    			for(j=0;j<m;j++)
    			{
    				b[i][j]=add(i,j);
    			}
    		}
    
    		if(k!=1)printf("\n");//必须在这输出 不明白 但能过
    
    		printf("Field #%d:\n",k++);
    
    		for(i=0;i<n;i++)
    		{
    			for(j=0;j<m;j++)
    			{
    				if(b[i][j]!=-1)
    					printf("%d",b[i][j]);
    				else
    					printf("*");
    			}
    			printf("\n");
    		}
    	}
    
    	return 0;
    }
    

      

  • 相关阅读:
    配置文件管理
    Nacos学习
    dockerCompose学习
    Dockerfile
    vue生命周期
    github使用
    推荐系统
    js笔记17
    js笔记16
    js笔记15
  • 原文地址:https://www.cnblogs.com/jackes/p/2430113.html
Copyright © 2020-2023  润新知