0
已解决
张元宝
修练者
修练者
Memory Limit Exceeded 是啥意思,该怎么解决?
我的代码:1099
#include<bits/stdc++.h> int s1[9][9],a,b,w,h,x,y,n; void gc(int a,int b,int hp,int m) { if(hp!=0) { if(s1[a][b]==3) { if((m<n)||(n==0)) n=m; } else { if(s1[a][b]==4) hp=6; if(s1[a-1][b]!=0) gc(a-1,b,hp-1,m+1); if(s1[a+1][b]!=0) gc(a+1,b,hp-1,m+1); if(s1[a][b-1]!=0) gc(a,b-1,hp-1,m+1); if(s1[a][b+1]!=0) gc(a,b+1,hp-1,m+1); } } } int main() { scanf("%d %d",&w,&h); for(a=1; a<=h; a++) for(b=1; b<=w; b++) { scanf("%d",&s1[a][b]); if(s1[a][b]==2) x=a; y=b; } for(a=0; a<=w; a++) { s1[0][a]=0; s1[h+1][a]=0; } for(a=0; a<=h; a++) { s1[a][0]=0; s1[a][w+1]=0; } gc(x,y,6,0); printf("%d",n); return 0; }
0
已采纳
栾峻岩
初级天翼
初级天翼
Memory Limit Exceeded
你的程序爆内存了!
using namespace std没打!(话说没打不是CE吗?)
栾峻岩在2018-10-27 13:24:36追加了内容
震惊!using namespace std加了之后还是MLE!
0
0
0
周天睿
初级光能
初级光能
Memory limit exceeded=程序内存超过上限
1.不要定义万能头!
2.不要套过多循环
至于怎么改,我也不晓得,总而言之,言而总之,精简一下就好了!
(ps:这是我这辈子第一次看见这种问题)
0
0
0
0