Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:为甚么WA?求大神帮看In Reply To:为甚么WA?求大神帮看 Posted by:hewangyx at 2017-10-29 16:48:45 > #include <iostream> > using namespace std; > int pmap[101][101],n,m,p,times,resn,resm; > void getnum(int n,int m,int t) //n行,m列 > { > switch(t) > { > case 1: { > resn=n-1;resm=m; > break; > } > case 2: { > resn=n;resm=m-1; > break; > } > case 3: { > resn=n+1;resm=m; > break; > } > case 4:{ > resn=n;resm=m+1; > } > } > } > int gettimes(int hang,int lie) > { > //cout<<"pos:"<<hang<<" "<<lie<<endl; > times++; > int nownum=pmap[hang][lie],pmin=pmap[hang][lie],pmax=0,ph=102,pl=102,bh=102,bl=102,n; > for(int i=1;i<5;i++) > { > getnum(hang,lie,i); > int nn[]={resn,resm}; > if(nn[0]<0 || nn[1]<0) continue; > //cout<<"t:"<<times<<" "<<nn[0]<<" "<<nn[1]<<" "<<i<<endl; > if(pmap[nn[0]][nn[1]]>pmax && pmap[nn[0]][nn[1]]<nownum) > { > pmax=pmap[nn[0]][nn[1]]; > bh=nn[0]; > bl=nn[1]; > } > if(pmap[nn[0]][nn[1]]<pmin) > { > pmin=pmap[nn[0]][nn[1]]; > ph=nn[0]; > pl=nn[1]; > } > } > if(pmin==10001 ||(ph==102 && pl==102) ||(bh==102 && bl==102) || pmax==0) return times; > //cout<<"re"<<endl; > gettimes(bh,bl); > } > int main() > { > int tto; > cin>>m>>n; > for(int i=0;i<m;i++) //行 > { > for(int j=0;j<n;j++) > { //列 > cin>>p; > pmap[i][j]=p; //前为行,后为列 > } > } > //cout<<pmap[4][4]; > //cin>>tto; > //getnum(0,0,tto); > //cout<<resn<<" "<<resm<<" "<<pmap[resn][resm]<<endl; > int nmax=0,now; > for(int ii=0;ii<m;ii++) > { > //cout<<ii<<endl; > for(int jj=0;jj<n;jj++) > { > times=0; > //cout<<ii<<" "<<jj<<endl; > //cout<<"restarted"<<endl; > now=gettimes(ii,jj); > if(now>nmax) nmax=now; > } > } > cout<<nmax<<endl; > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator