这个代码为什么会报Runtime Error(ACCESS_VIOLATION)如果把全局变量二维数组dp换为和二维数组a一起定义就ac了,这是什么原因?#include <iostream>#include <string>using namespace std;int dp[115][115];int main(){int t;cin>>t;while(t–){int i,j,n,m;int a[115][115];cin>>n>>m;memset(dp,0,sizeof(dp));for(i=1;i<=n;i++)for(j=1;j<=m;j++)cin>>a[i][j];dp[1][1]=1;for(i=1;i<=n;i++)for(j=1;j<=m;j++){if(dp[i][j]){int d=a[i][j];int x,y;for(x=0;x<=d;x++){for(y=0;y<=d;y++){if(x+y==0)continue;if(x+y>d)break;int di=x+i,dj=y+j;if(x+i<=n&&y+j<=m)dp[di][dj]+=dp[i][j];dp[di][dj]%=10000;}}}}cout<<dp[n][m]%10000<<endl;}}