设为首页 加入收藏

TOP

HDU 4771 Stealing Harry Potter's Precious(二)
2015-11-21 01:55:21 来源: 作者: 【 】 浏览:6
Tags:HDU 4771 Stealing Harry Potter' Precious
i,j,xi,yi; bool visit[N][N]; for(i=1;i<=m;i++) for(j=1;j<=n;j++) dis[i][j]=Inf; memset(visit,false,sizeof(visit)); dis[x][y]=0; visit[x][y]=true; queue q; Node ini; ini.x=x;ini.y=y;ini.step=0; q.push(ini); while(!q.empty()) { ini=q.front(); q.pop(); for(i=0;i<4;i++) { xi=ini.x+mov[i][0];yi=ini.y+mov[i][1]; if(!visit[xi][yi]&&map[xi][yi]!='#') { visit[xi][yi]=true; dis[xi][yi]=ini.step+1; Node tmp; tmp.x=xi;tmp.y=yi; tmp.step=ini.step+1; q.push(tmp); } } } } void dfs(int pos,int now,int cnt,int num) { int i; if(cnt==num) { ans=min(ans,now); return ; } for(i=head[pos];i!=-1;i=edge[i].next) { int ed=edge[i].e; if(!vis[ed]) { vis[ed]=true; dfs(ed,now+edge[i].w,cnt+1,num); vis[ed]=false; } } return ; } int main() { int m,n,i,j,k,x[4],y[4],x0,y0; bool flag; while(~scanf("%d%d",&m,&n),m+n) { ans=Inf; flag=true; getchar(); memset(map,'#',sizeof(map)); memset(head,-1,sizeof(head)); memset(vis,false,sizeof(vis)); t=0; for(i=1;i<=m;i++) { for(j=1;j<=n;j++) { scanf("%c",&map[i][j]); if(map[i][j]=='@') x0=i,y0=j; } getchar(); } scanf("%d",&k); for(i=0;i

?

?
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇关于“error C2871: 'std'.. 下一篇北大ACM 2262 Goldbach's Con..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: