hdu 1253 胜利大逃亡_三维
来源:互联网 发布:远程教学用什么软件 编辑:程序博客网 时间:2024/06/06 14:09
第一次做三维的题,这题跑g++超时了,c++过了.
#include<iostream>#include<cstdio>#include<queue>using namespace std;#define N 52int map[N][N][N],visit[N][N][N],a,b,ttime,c;struct Node{int i,j,k;int time;};int dir[][3]={{1,0,0},{0,1,0},{0,0,1},{-1,0,0},{0,-1,0},{0,0,-1}};int bfs(){Node t,tmp,start;int i;queue<Node>q;start.i=start.j=start.k=1;start.time=ttime;q.push(start);visit[1][1][1]=1;while(!q.empty()){t=q.front();q.pop();if(t.i==a&&t.j==b&&t.k==c&&t.time>=0)return ttime-t.time;for(i=0;i<6;i++){tmp=t;tmp.i+=dir[i][0];tmp.j+=dir[i][1];tmp.k+=dir[i][2];tmp.time--;if(map[tmp.i][tmp.j][tmp.k]==-1||map[tmp.i][tmp.j][tmp.k]==1)continue;if(visit[tmp.i][tmp.j][tmp.k])continue;if(tmp.i==a&&tmp.j==b&&tmp.k==c){if(tmp.time>=0)return ttime-tmp.time;elsereturn -1;}if(tmp.time>=0){q.push(tmp);visit[tmp.i][tmp.j][tmp.k]=1;}}}return -1;}int main(){int t,i,j,k;scanf("%d",&t);while(t--){scanf("%d%d%d%d",&a,&b,&c,&ttime);memset(visit,0,sizeof(visit));memset(map,-1,sizeof(map));for(i=1;i<=a;i++)for(j=1;j<=b;j++)for(k=1;k<=c;k++)scanf("%d",&map[i][j][k]);printf("%d\n",bfs());}return 0;}
- hdu 1253 胜利大逃亡_三维
- hdu 1253 胜利大逃亡 (三维bfs)
- 胜利大逃亡 hdu 1253 三维
- HDU 1253 胜利大逃亡 三维BFS
- HDU-1253 胜利大逃亡【三维广搜】
- hdu 1253 胜利大逃亡 简单三维BFS
- hdu 1253 胜利大逃亡 (三维简单bfs+剪枝)
- HDU 1253 - 胜利大逃亡(三维搜索)
- [ACM] hdu 1253 胜利大逃亡 (三维BFS)
- HDU 1253 胜利大逃亡(简单三维BFS)
- HDU 1253:胜利大逃亡(简单三维BFS)
- HDU 1253---胜利大逃亡【BFS三维数组】
- HDU 1253-胜利大逃亡(裸三维BFS)
- HDU 1253 胜利大逃亡(三维BFS)
- hdu 1253 胜利大逃亡(三维bfs)
- [ACM] hdu 1253 胜利大逃亡 (三维BFS)
- hdu 1253 胜利大逃亡 三维bfs 解题报告
- hdu 1253 胜利大逃亡(BFS,三维)
- 亲测有效,cents 5.X php 5.1升级到5.3 3句话搞定
- 【C/C++ 语法备忘】2、内存泄露检查工具VLD
- 成都传智播客 不用“包就业”赚生源
- SpringMVC表单参数获取
- 更稳固 更自信
- hdu 1253 胜利大逃亡_三维
- 如何利用iText在java程序中生成PDF文件
- linux2.6调度器
- hdu 4549 M斐波那契数列 数论 矩阵
- Http常见错误
- 论分类(三)-感知器篇(续)
- Hadoop中MapReduce运行剖析-Anatomy of a MapReduce Job Run with Hadoop
- TCP参数设定说明
- JAVA虚拟机体系结构-------(深入Java虚拟机第五章总结)