暴力DFS。

有2个剪枝:

1.记录一下走到某一格的最小步数

2.走到安全地点马上return

WA点:安全地点坐标不一定在300以内!

#include<cstdio>
#include<cstring>
#include<cmath>
#include<vector>
#include<algorithm>
using namespace std;const int INF=0x7FFFFFFF;
const int maxn=300+10;
int m,ans;
int f[maxn][maxn],flag[maxn][maxn];
int dir[4][2]={{0,1},{0,-1},{1,0},{-1,0}
};bool P(int a,int b,int cnt)
{if(a>=0&&a<=305&&b>=0&&b<=305&&flag[a][b]>cnt+1&&cnt+1<f[a][b]) return 1;return 0;
}void dfs(int a,int b,int cnt)
{if(f[a][b]==INF) {ans=min(ans,cnt);return;}for(int i=0;i<4;i++){if(P(a+dir[i][0],b+dir[i][1],cnt)){flag[a+dir[i][0]][b+dir[i][1]]=cnt+1;dfs(a+dir[i][0],b+dir[i][1],cnt+1);}}
}int main()
{while(~scanf("%d",&m)){for(int i=0;i<306;i++) for(int j=0;j<306;j++) flag[i][j]=f[i][j]=INF;for(int i=1;i<=m;i++) {int xi,yi,ti; scanf("%d%d%d",&xi,&yi,&ti);f[xi][yi]=min(f[xi][yi],ti);for(int k=0;k<4;k++){if(xi+dir[k][0]>=0&&xi+dir[k][0]<=305)if(yi+dir[k][1]>=0&&yi+dir[k][1]<=305)f[xi+dir[k][0]][yi+dir[k][1]]=min(f[xi+dir[k][0]][yi+dir[k][1]],ti);}}ans=INF;if(f[0][0]>0) {flag[0][0]=0;dfs(0,0,0);    }if(ans==INF) ans=-1;printf("%d\n",ans);}return 0;
}

转载于:https://www.cnblogs.com/zufezzt/p/5342710.html

POJ 3669 Meteor Shower相关推荐

  1. POJ 3669 Meteor Shower 流星雨 解题思路心得 BFS广搜 C/C++AC代码(另有TLE不知其因)

    原题 http://poj.org/problem?id=3669 题意 贝西(Bessie)听说即将发生一场异常的流星雨;有报道称这些流星将坠入大地并摧毁其所击中的任何东西,为安全着急,她发誓要找到 ...

  2. 【POJ - 3669】Meteor Shower(bfs)

    -->Meteor Shower 直接上中文了 Descriptions: Bessie听说有场史无前例的流星雨即将来临:有谶言:陨星将落,徒留灰烬.为保生机,她誓将找寻安全之所(永避星坠之地) ...

  3. bzoj 1611: [Usaco2008 Feb]Meteor Shower流星雨(DP)

    1611: [Usaco2008 Feb]Meteor Shower流星雨 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1631  Solved: 6 ...

  4. 玉米迷宫,Meteor Shower S,单词接龙

    玉米迷宫:- [P1825 [USACO11OPEN]Corn Maze S](https://www.luogu.com.cn/problem/P1825) 这是让我卡了整整一天的题目,虽然说思路不 ...

  5. P2895 [USACO08FEB]Meteor Shower S

    [USACO08FEB]Meteor Shower S 题目描述 Bessie hears that an extraordinary meteor shower is coming; reports ...

  6. 洛谷 P2895 [USACO08FEB]Meteor Shower S C++ BFS 广搜

    题目描述 Bessie hears that an extraordinary meteor shower is coming; reports say that these meteors will ...

  7. bfs总结 bfs题单 最短路 python (奇怪的电梯 好奇怪的游戏 迷宫 马的遍历 [USACO08FEB]Meteor Shower S)

    1 可以用来遍历所有的点 2 可以用来找最短路 3 多源最短路,开始时一次向队列放之多个点#板子 """ def bfs():1 起始点入队标记入队的点while not ...

  8. poj3669 Meteor Shower(预处理+bfs)

    https://vjudge.net/problem/POJ-3669 先给地图a[][]预处理每个位置被砸的最小时间.然后再bfs. 纯bfs,还被cin卡了下时间.. 1 #include< ...

  9. (BFS)Meteor Shower (poj3669)

    题目: Bessie听说有场史无前例的流星雨即将来临:有谶言:陨星将落,徒留灰烬.为保生机,她誓将找寻安全之所(永避星坠之地).目前她正在平面坐标系的原点放牧,打算在群星断其生路前转移至安全地点. 此 ...

最新文章

  1. 第三天:Vue的组件化
  2. 3GPP组织和协议概述
  3. python支持的数据类型list_Python基本数据类型之list
  4. 基于socket的简单p2p聊天项目
  5. Note6:batch file programming
  6. 并发编程-06线程安全性之可见性 (synchronized + volatile)
  7. CA自签证书的颁发及应用
  8. Java黑皮书课后题第5章:**5.17(显示金字塔)编写程序,提示用户输入一个在1到15之间的整数,然后显示一个金字塔形状的图案
  9. Flex CursorManager
  10. hdu1010(小狗逃迷宫)
  11. RTA广告能力的应用场景剖析
  12. c语言指针生成numpy数组,python – 在cython中声明numpy数组和c指针
  13. java连接mysql数据库方法_java连接mysql数据库的方法详解
  14. 【EI 快速检索 | 九月特邀】经济与计算机多主题国际会议
  15. java addgap,java GroupLayout格局
  16. 【MODIS】MODIS数据的常用下载源
  17. 2016年大学计算机期末笔试题目,2017年计算机基础大一考试题「附答案」
  18. Express 路由
  19. Error querying database. Cause: org.apache.ibatis.reflection.ReflectionException: There is no gette
  20. 河南理工大学matlab,有没有会MATLAB的大神

热门文章

  1. linux启动sql server数据库,SQL Server数据库启动过程详解及启动不起来的问题分析及解决方法...
  2. matlab怎么根据波宽度去波,使用Matlab图像处理(三)——图像滤波原理
  3. mybatis mysql 配置文件_Mybatis配置文件详解(4)
  4. Redis初学:6(List类型)
  5. [置顶]完美简版学生信息管理系统(附有源码)管理系统
  6. python跨行字符串 变量_在Python中有没有在多行字符串中使用变量的方法?
  7. 取消tableView多余的横线
  8. u-charts 曲线图中间有部分没数据,导致点和点无法连成线的问题解决
  9. 彻底理解OkHttp - OkHttp 源码解析及OkHttp的设计思想
  10. Python函数式编程-map/reduce