社区讨论

数据是不是太弱?

P2670[NOIP 2015 普及组] 扫雷游戏参与者 5已保存回复 8

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
8 条
当前快照
1 份
快照标识符
@lo88fny9
此快照首次捕获于
2023/10/27 14:28
2 年前
此快照最后确认于
2023/10/27 14:28
2 年前
查看原帖
我在统计*的个数的时候,双重循环都到n也过了,就离谱。
一年前的代码:
CPP
#include<bits/stdc++.h>
using namespace std;
long long n,m,a[123][132];
string l;
int main(){
    scanf("%lld %lld",&n,&m);
    for(int i=0;i<n;i++){
        int j=0;
        cin>>l;
        while(j<=l.size()-1){
            if(l[j]=='*')a[i][j]=-100000000;
            j++;
        }
    }
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            if(a[i][j]!=-100000000){
                if(a[i-1][j]==-100000000)a[i][j]++;
                if(a[i][j-1]==-100000000)a[i][j]++;
                if(a[i+1][j]==-100000000)a[i][j]++;
                if(a[i][j+1]==-100000000)a[i][j]++;
                if(a[i-1][j-1]==-100000000)a[i][j]++;
                if(a[i-1][j+1]==-100000000)a[i][j]++;
                if(a[i+1][j+1]==-100000000)a[i][j]++;
                if(a[i+1][j-1]==-100000000)a[i][j]++;
            }
        }
    }
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){
            if(a[i][j]!=-100000000)printf("%lld",a[i][j]);
            else printf("%s","*");
        }
        cout<<"\n";
    }
}

回复

8 条回复,欢迎继续交流。

正在加载回复...