zoukankan      html  css  js  c++  java
  • poj-2612

    题意:

    输入一个n,然后输入两个n*n矩阵,一个代表雷的矩阵,一个代表走过的的矩阵。然后输出结果矩阵、

    解题思路:

    结果矩阵分两种情况,一个是没有踩到雷的,一个是踩到雷的,踩到雷的要把雷都显示出来。其实就是用

    结构体的二维数组存的两个矩阵,然后输入,判断即可。

    具体代码:

    #include<iostream>
    #include<cstring>
    #include<string>
    using namespace std;
    int n;
    struct node
    {
        char lei;
        char kai;
    }map[15][15];
    int fangxiang[9][2]={{0,0},{0,1},{1,0},{0,-1},{-1,0},{1,-1},{-1,1},{1,1},{-1,-1}};
    int Try(int x,int y)
    {
        int sum=0;
        for(int i=0;i<9;i++)
        {    
            int xx=x+fangxiang[i][0];
            int yy=y+fangxiang[i][1];
            if(xx>=0&&xx<n&&yy>=0&&yy<n)
                if(map[xx][yy].lei=='*')
                    sum++;
        }
        return sum;
    }
    int main()
    {
        cin>>n;
        int res=0;
        for(int i=0;i<n;i++)
            for(int j=0;j<n;j++)
                cin>>map[i][j].lei;
        for(int i=0;i<n;i++)
            for(int j=0;j<n;j++)
                cin>>map[i][j].kai;
         for(int i=0;i<n;i++)
            for(int j=0;j<n;j++)
                if(map[i][j].kai=='x'&&map[i][j].lei=='*')
                    res=1;
        if(res==0)
        {
            for(int i=0;i<n;i++)
            {
                for(int j=0;j<n;j++)
                {
                    if(map[i][j].kai=='.')
                        cout<<".";
                    else if(map[i][j].kai=='x')
                    {
                        cout<<Try(i,j);
                    }
                }
                cout<<endl;
            }
        }
        else
        {
            for(int i=0;i<n;i++)
            {
                for(int j=0;j<n;j++)
                {
                    if(map[i][j].kai=='.'&&map[i][j].lei!='*')
                        cout<<".";
                    else if(map[i][j].lei=='*')
                        cout<<"*";
                    else if(map[i][j].kai=='x')
                    {
                        cout<<Try(i,j);
                    }
                }
                cout<<endl;
            }
        }
        system("pause");        
        return 0;
    }
    View Code
  • 相关阅读:
    U盘禁用工具1.3
    《中文专业论文写作概论》笔记
    基于WAP1.0的手机论坛网站系统
    销售统计SQL
    移动如何保护个人开发者的合法权益?
    c#使用winnet检测网络连接状况
    HBASE客户端的一些参数设置
    代理模式
    使用Eclipse+Axis2生成webservice
    java多线程的理解
  • 原文地址:https://www.cnblogs.com/baoluqi/p/3735422.html
Copyright © 2011-2022 走看看