什么是暴力破解法?
暴力破解法,就是把所有条件,相关情况统统考虑进去,让计算机进行检索,指导得出与之所有条件符合的结果
(但是,暴力破解法对计算机资源耗费严重,如果条件太复杂,运算速度缓慢,为了解决这一问题,我们可以事先把与之不相关的条件进行限制,减少计算机的运算量)
例如
扫雷-蓝桥杯
#include <iostream>
#include<bits/stdc++.h>
#define N 1001
#define INF 0x3f3f3f3f
#define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)
#define rep(i,a,n) for(int i=a;i<=n;i++)
typedef long long ll;
using namespace std;
int main()
{
int n,m,a[100][100],b[100][100];
cin>>n>>m;
if(n<1||m>100) exit(0);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(a[i][j]==1) b[i][j]=9;
else {
if(a[i-1][j-1]==1) b[i][j]++;
if(a[i-1][j]==1) b[i][j]++;
if(a[i-1][j+1]==1) b[i][j]++;
if(a[i][j-1]==1) b[i][j]++;
if(a[i][j+1]==1) b[i][j]++;
if(a[i+1][j-1]==1) b[i][j]++;
if(a[i+1][j]==1) b[i][j]++;
if(a[i+1][j+1]==1) b[i][j]++;
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cout<<b[i][j]<<" ";
}
cout<<endl;
}
// 请在此输入您的代码
return 0;
}