最近在做csp认证202104-2题的时候想把主函数二维数组A传递给函数B但不知到具体怎么传过去(A数组的二维都是动态的)。
#include <bits/stdc++.h>
using namespace std;
int n,L,r,t;
int huidu(int i,int j,int r,int t,int B[][])
{
int x1,x2,y1,y2,z,c;
int vis=0;
int sum=0;
x1=i-r;x2=i+r;y1=j-r;y2=j+r;
if(x1<0)
{
x1=0;
}
if(y1<0)
{
y1=0;
}
if(x2>n-1)
{
x2=n-1;
}
if(y2>n-1)
{
y2=n-1;
}
for(z=y1;z<=y2;z++)
{
for(c=x1;c<=x2;c++)
{
sum+=B[z][c];
vis++;
}
}
return sum/vis;
}
int main()
{
cin>>n>>L>>r>>t;
int A[n-1][n-1];
int ans=0;
int temp=0;
for(int i=0;i<=n-1;i++)
{
for(int j=0;j<=n-1;j++)
{
cin>>A[i][j];
}
}
for(int i=0;i<=n-1;i++)
{
for(int j=0;j<=n-1;j++)
{
ans=huidu(i,j,r,t,A);
if(ans<=t)
{
temp++;
}
}
}
cout<<temp<<endl;
return 0;
}