题目大意:

现在在一张N*M的地图上有K只babingbaboom!!!对于一张地图上的点都有一个h[i][j] 来表示这个地方的高度。现在这些babingbaboom都想要跑到北边的一个山坡上。求出离每一个babingbaboom最近的靠北的山。

山: 
山的周围没有比它更高的地方。(四联通) 
在北边: 
令一个人的坐标为A(a,b),山的坐标为B(x,y) ,山在人的北边当且仅当dis[A][B]=a−x


思路:

很明显是一道DP题目。 
画一下图就可以发现,其实在北边的位置就是一个三角形。 
设f[i][j]为i行j列距离北边最近山峰的距离。 
那么如果这个位置本身就是一个山峰,那么f[i][j]=0
如果这个位置不是山峰,那么由于是一个三角形,就有

f[i][j]=min(f[i−1][j+1],min(f[i−1][j−1],f[i−1][j]))+1

采用离线算法,O(1)输出


代码:

#include <cstdio>
#include <iostream>
#include <cstring>
#define Inf 99999999
using namespace std;int n,m,k,x,y,a[2001][2001],f[2001][2001];int main()
{scanf("%d%d%d",&n,&m,&k);memset(f,127/3,sizeof(f));  //初始化for (int i=1;i<=n;i++)for (int j=1;j<=m;j++)scanf("%d",&a[i][j]);for (int i=1;i<=n;i++)for (int j=1;j<=m;j++)  //枚举点f[i][j]=(a[i][j]<=a[i-1][j]||a[i][j]<=a[i+1][j]||a[i][j]<=a[i][j-1]||a[i][j]<=a[i][j+1])?min(f[i-1][j+1],min(f[i-1][j-1],f[i-1][j]))+1:0;  //若这是一个山峰,则f[i][j]=0,否则为旁边点到山峰的距离+1 while (k--){scanf("%d%d",&x,&y);f[x][y]>Inf?printf("Pool Babingbaboom!\n"):printf("%d\n",f[x][y]);}return 0;
}

转载于:https://www.cnblogs.com/hello-tomorrow/p/9353180.html

八百标兵奔北坡【DP】相关推荐

  1. 【DP】洛谷公开赛 CYJian的水题大赛 T1 八百标兵奔北坡

    题目链接 https://www.luogu.org/problemnew/show/U30363 题目大意 给定每个点的高度,求出每个点与离他最近的高于周围点高度的点(即山)之间的切比雪夫距离 解题 ...

  2. 题解洛谷P4771(c++解法)八百标兵奔北坡

    这是一道非常成功的题目(完全看不出是DP),于是身为蒟蒻的我就开始乱搞~~(乱搞压标算)~~ , 在被样例图示坑到后,我完成了一份成功的暴力,如下 #include<iostream> # ...

  3. 八百元八核的服务器?二手服务器搭建指南

    当你在花近万元剁手i7 5960x时,有没有想过,在华强北的某个角落,有一群人靠几百块收来的二手服务器配件,搭建了一台性能同等,甚至更强的服务器! 不知道有多少人还记得笔者之前发的贴子<看我如何 ...

  4. 八百客CRM:微信提现收费,仅仅用户钱包受了伤?

    近日,微信支付团队发布公告称,自2016年3月1日起,微信支付将对个人用户零钱提现开始收费,一石激起千层浪,引起了公众的广泛关注.这一收费措施,将会给用户带来怎样的"蝴蝶效应". ...

  5. 中小企业CRM评测-八百客

    系统管理<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 如何评 ...

  6. 自损八百!内存芯片大厂美光断供华为:与华为业务占其营收13%

    继英特尔.高通.赛灵思.博通等美国科技大企之后,内存芯片大厂美光科技5月29日也发出声明正式暂停向华为供货. 美光(Micron)发布正式声明指出,遵守美国及各营运据点所在国家的所有法律与法规,目前已 ...

  7. 基金指数温度怎么算_壁挂炉采暖费怎么算?从两千到八百,内行人教你别再花冤枉钱...

    阅读本文前,请您先点击上面的"蓝色字体",再点击"关注",这样您就可以继续免费收到文章了.每天都会有分享,都是免费订阅,请您放心关注.注:本文转载自网络,不代表 ...

  8. 山寨式创业 八百客誓做“管理软件终结者 ”

    2004年6月,曾在甲骨文公司做软件开发的李智从美国硅谷回国创业.那时候,美国独立SAAS(在线软件)厂商Salesforce已经得到了市场的广泛认可.李智在当时就很清楚,虽然中国市场并不一定马上就能 ...

  9. 浅谈八百呼电销系统的基础功能

    电销,即指"电话营销",就是通过先进的电话技术和计算机技术(包括:数据库技术和网络技术等),实现在多种情况下与客户的接触,从而与客户建立起信任关系,并在建立关系的过程中,了解和挖掘 ...

最新文章

  1. CVPR2020:三维点云无监督表示学习的全局局部双向推理
  2. R语言:计算各种距离
  3. 吴恩达深度学习笔记(67)-迁移学习(Transfer learning)
  4. Python中浅拷贝与深拷贝的骚操作
  5. vivox50pro鸿蒙系统,钱包卡包都承包 vivo X50 Pro+多功能NFC玩法多
  6. radiobutton在listview中处理
  7. codematic2连接mysql失败_动软代码生成器Codematic
  8. 图像颜色与强度分离(intensity and color decouple)方法 matlab代码
  9. 张柏芝-从清纯走向堕落
  10. android dlna uri,android DLNA投屏
  11. java捕鱼源码,java实现捕鱼达人
  12. 语音信号调制matlab,第二章 语音信号的数字模型 数字语音处理及MATLAB仿真 教学课件.ppt...
  13. 2018.11.3 PION模拟赛
  14. c语言中%加字母是啥意思,%C是什么意思? C语言中%c,%s分别代表什么意思?
  15. PI API 基础函数(一)
  16. 获取地图数据GEOJSON还有OSM
  17. AI 在视频领域运用—弹幕穿人
  18. 关于对象转json字符串的几个工具比较
  19. 启迪智慧的故事【老太太买李子】
  20. SQL查询语句(一)

热门文章

  1. vue垂直布局_vue 弹性布局 实现长图垂直居上,短图垂直居中
  2. UINO数字孪生可视化智慧消防解决方案亮相北京消防展
  3. 编程求a+aa+aaa+aa…a(n个a)之和
  4. 雪碧图 移动端雪碧图
  5. PC-DMIS 如何更改CAD模型的坐标系
  6. Rmd 渲染html 如何生成侧边栏
  7. 上海轨道交通运营路线示意图
  8. 移动端overflow无效问题
  9. php生成aes密钥,为AES加密生成密钥的安全性
  10. 什么是第四方支付平台?