开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
踩地雷简单题,因为懒得用二维阵列去做就去网络上找用map写法的
看到有一个是写成以下这样
#include<iostream>
#include<map>
using namespace std;
int n1,n2,h=1;
int main(){
while(cin>>n1>>n2&&n1!=0&&n2!=0)
{ if(h>1){cout<<endl;}
map<int,map<int,char> >a;
for(int i=0;i<n1;i++)
{
for(int ii=0;ii<n2;ii++)
{
cin>>a[i][ii];
}
}
cout<<"Field #"<<h<<":"<<endl;
for(int i=0;i<n1;i++,cout<<endl)
{
for(int ii=0;ii<n2;ii++)
{
if(a[i][ii]=='*'){cout<<"*"; continue;}
#define A(R,C) (a[R][C]=='*')
int ans=A(i-1,ii-1)+A(i-1,ii)+A(i-1,ii+1)
+A(i,ii-1)+A(i,ii)+A(i,ii+1)
+A(i+1,ii-1)+A(i+1,ii)+A(i+1,ii+1);
cout<<ans;
}
}
h++;
}
}
想请问 #define A(R,C) (a[R][C]=='*')
int ans=A(i-1,ii-1)+A(i-1,ii)+A(i-1,ii+1)
+A(i,ii-1)+A(i,ii)+A(i,ii+1)
+A(i+1,ii-1)+A(i+1,ii)+A(i+1,ii+1);
这一整段是啥意思?