zoukankan      html  css  js  c++  java
  • Luogu P2670 【扫雷游戏】

    作为一名刚入oi大坑(雾)的蒟蒻,读题的时候我最先想到的是开一个二维字符组(不清楚到底叫什么),然后把整个矩阵输入进去,进行循环判断,如果在该位置的周围有雷的话,就将其的数值加1;同样,如果该位置是雷的话,就直接赋值为“*”。最后直接输出矩阵里的每个位置所代表的含义(数字或者“*”)。(幸好这个题的数据范围较小,要不数据大了之后程序应该会爆掉。。。做这个题的时候旁边一个dalao用的是邻接矩阵。。。)

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    char c[101][101];//神奇的二维字符数组
    int main()
        {
        int a,b;
        cin>>a>>b;//输入矩阵大小
        for(int i=0;i<a;i++)
            for(int j=0;j<b;j++)//嵌套循环输入
            {
            cin>>c[i][j];//输入每个位置上的情况
            }
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++)//循环输出,判断周围是否有雷
                {
                int sum=0;
                if(c[i][j]=='*') cout<<'*';//如果该位置有雷,直接输出‘*’
                else         //判断,周围有雷自+1;
                    {
                    if(c[i-1][j+1]=='*') sum++;
                    if(c[i][j+1]=='*') sum++;
                    if(c[i+1][j+1]=='*') sum++;
                    if(c[i-1][j]=='*') sum++;
                    if(c[i+1][j]=='*') sum++;
                    if(c[i-1][j-1]=='*') sum++;
                    if(c[i][j-1]=='*') sum++;
                    if(c[i+1][j-1]=='*') sum++;
                    cout<<sum;//判断完毕后直接输出sum
                    }
                }
                cout<<endl;//换行
        }   
        return 0;     
        }
    
    
  • 相关阅读:
    (II)第一节:IOC 和 DI
    (I)第二节:开发环境
    (I)第一节:Spring 框架
    Spring【目录】
    MyBatisPlus 之 Oracle 数据库主键
    MyBatisPlus 之 公共字段自动填充
    MyBatisPlus 之 全局SQL注入器应用
    MyBatisPlus 之 自定义全局操作
    MyBatisPlus 之 代码生成器
    彻底理解Netty
  • 原文地址:https://www.cnblogs.com/clockcleaner/p/9033150.html
Copyright © 2011-2022 走看看