博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3669 Meteor Shower(bfs)
阅读量:6852 次
发布时间:2019-06-26

本文共 2089 字,大约阅读时间需要 6 分钟。

bfs就好,取最早的毁坏时间。

就一组数据,初始化都没有,直接用dist[][]状态判重。

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;#define PB push_back#define MP make_pair#define fi first#define se second#define PS push#define cer(x) cout<<#x<<'='<
0; i--)#define DWN_(i,n) for(int i = n; i >= 0; i--)#define REP(i,s,e) for(int i = s; i < e; i++)#define REP_(i,s,e) for(int i = s; i <= e; i++)#define CLR(a,v) memset(a,v,sizeof(a))#define para int o = 1, int l = 1,int r = n#define lo (o<<1)#define ro (o<<1|1)#define TEMP int mid = (l+r)>>1;#define lsn lo, l, mid#define rsn ro, mid+1, r#define insd ql<=l&&r<=qrinline int read(){ int ret; char c; while(c = getchar(),c<'0'||c>'9'); ret = c-'0'; while(c = getchar(),c>='0'&&c<='9') ret = ret*10 + c-'0'; return ret;}inline int reads(){ int ret; char c; while(c = getchar(),c != '-' && c<'0'||c>'9'); bool Sign = c == '-'; ret = Sign?0:c-'0'; while(c = getchar(),c>='0'&&c<='9') ret = ret*10 + c-'0'; return Sign?-ret:ret;}const int maxn = 305;int g[maxn][maxn];int d[maxn][maxn];const int MxT = 1001;typedef pair
Node;const int dx[] = { 0,0,1,-1}, dy[] = { 1,-1,0,0};bool valid(int x,int y){ return x>=0&&x
=0&&y
q; q.push(Node(0,0)); d[0][0] = 1; while(q.size()){ Node u = q.front(); q.pop(); if(g[u.fi][u.se] > MxT) return d[u.fi][u.se]-1; int step = d[u.fi][u.se]; for(int k = 0; k < 4; k++){ int nx = u.fi+dx[k], ny = u.se+dy[k]; if(valid(nx,ny) &&!d[nx][ny] && step < g[nx][ny]){ d[nx][ny] = step+1; q.push(Node(nx,ny)); } } } return -1;}//#define LOCALint main(){#ifdef LOCAL freopen("in.txt","r",stdin);#endif int M = read(); memset(g,0x3f,sizeof(g)); for(int i = M; i--;){ int x = read(), y = read(); int t = read(); for(int k = 0; k < 4; k++){ int nx = x+dx[k], ny = y+dy[k]; if(valid(nx,ny)){ g[nx][ny] = min(g[nx][ny],t); } } g[x][y] = min(g[x][y],t); } printf("%d\n",bfs()); return 0;}//freopen("OutStd.txt","w",stdout);

 

转载于:https://www.cnblogs.com/jerryRey/p/4889590.html

你可能感兴趣的文章
IOS开发之UIScrollVIew运用
查看>>
iOS 基础-----关于UIView 的 frame 与 bounds
查看>>
ISO GPS定位,坐标转换以及如何显示
查看>>
深入理解Java:类加载机制及反射
查看>>
Use a PowerShell Module to Easily Export Excel Data to CSV
查看>>
Redis清理
查看>>
读书笔记—CLR via C#章节8-10
查看>>
洛谷 3804 【模板】后缀自动机
查看>>
LOJ 2736 「JOISC 2016 Day 3」回转寿司 ——堆+分块思路
查看>>
IE8爆出0day,影响所有版本Windows
查看>>
php: Cannot send session cache limiter
查看>>
子类复制父类的值
查看>>
例题10-1 UVa11582 Colossal Fibonacci Numbers!(同余与模算术)
查看>>
hdu 1385 题意 测试数据
查看>>
Java 炫舞按键功能 DancingPlay (整理)
查看>>
rtems网络移植-rtems系统初始化过程分析
查看>>
re正则表达式:import re ;re.search()
查看>>
介绍下Shell中的${}、##和%%使用范例,本文给出了不同情况下得到的结果。
查看>>
math.net 拟合
查看>>
找出数组中两数之和为指定值的所有整数对
查看>>