【动态规划BFS】相遇

这是我第一次模拟题测试点全部AC。。。

同机房的DALAO都用的BFS

然而我用的DP(其实不会BFS)


 

话不多说,上题!

(灰常详细)DP解法:

重点还是状态转移方程式的推导

1个点i要么是后面的位置i-1往前走一步,i+1往后走一步即dg[i]=

或者是一个点i*2从i瞬移一步。

如果是自身的话也可能不走。

此时就要找哪一种走的最少了

状态转移方程就是dg[i]=min(dg[i],min(dg[i-1]+1,dg[i+1]+1))

和dg[i*2]=min(dg[i*2],dg[i]+1)

推导出方程就比较容易解了

#include<cstring>
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int dp[2000005];//数组开两倍是因为有可能走到K点后面再往前走。
int main()
{freopen("meet.in","r",stdin);freopen("meet.out","w",stdout);int N,K;scanf("%d%d",&N,&K);memset(dp,0x7f,sizeof(dp));//将所有数初始化到最大值dp[N]=0;//从N开始,步数为0for(int i=N-1;i>=0;i--)//先往前推,把前面的步数通过dp[N]算出来;{dp[i]=min(dp[i],(dp[i-1]+1,dp[i+1]+1));dp[i*2]=min(dp[i*2],dp[i]+1);}for(int i=N;i<=K;i++)//再往后推,计算后面的步数。{dp[i]=min(dp[i],min(dp[i-1]+1,dp[i+1]+1));dp[i*2]=min(dp[i*2],dp[i]+1);}cout<<dp[K];    //打印K点的步数。return 0;        
}

看起来还是挺简单的

我再去研究一下广搜做法。。。

 

转载于:https://www.cnblogs.com/JCRL/p/9913684.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276955.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ruby on Rails 通过代理远程安装

在网上查了一些资料&#xff0c;都不详细&#xff0c;现在列出标准命令&#xff1a; 1。如果代理服务器需要认证 gem install rails --include-dependencies --http-proxy http://username:passwordproxy:port 2。如果代理服务器不需要认证 gem install rails --include-depend…

五个思路,教你如何建立金融业的数据分析管理模型

说起银行、保险、股票投资这样的金融行业&#xff0c;很多人都认为它们是依靠数据驱动的企业&#xff0c;毕竟大数据的诞生本来就是为了金融信息流通而服务的&#xff0c;但在我身边很多搞证券、投资的朋友看来&#xff0c;事实却并非如此。 真正在金融行业做数据分析的人&…

【SSH网上商城项目实战19】订单信息的级联入库以及页面的缓存问题

购物车这一块还剩最后两个问题&#xff0c;就是订单信息的级联入库和页面缓存&#xff0c;这里的信息是指购物车和购物项&#xff0c;即我们将购物车的信息存入数据库的同时&#xff0c;也存入每个购物项的信息&#xff0c;而且外键都关联好&#xff0c;这涉及到了Hibernate中的…

exfat分配单元大小选多少_安防监控摄像机视角大小和镜头毫米数的基础知识!...

关于选择监控镜头毫米数的问题&#xff0c;虽然只有新手才有此困惑&#xff0c;但是我们还是要认真地说一说。监控视角&#xff0c;就是指监控照射的镜头所能覆盖到的范围&#xff0c;就是监控画面所能看到的角度统称叫监控视角。我们正常选购监控的时候&#xff0c;除了可以选…

彩信编辑器之预览功能

html代码 <table width"200"height"250"border"0"cellpadding"0"cellspacing"0"bgcolor"#666666"><tr><td align"center"valign"middle"><marquee id"MMScreen&qu…

java 几个实用的小工具

1、除法运算 编程的人都知道&#xff0c;java中的“/”、“%”运算&#xff0c;其中前者为取整&#xff0c;后者取余数。那么有没有快捷的运算方法取正常的运算结果呢&#xff1f; 查了资料&#xff0c;发现很简单。代码如下&#xff1a; public static String txfloat(int a,i…

处理模板页菜单高亮

//处理模板页菜单高亮var urlstatus false;$("#indexMenu a").each(function () {if ((location.href /).indexOf($(this).attr(href)) > -1 && $(this).attr(href) ! ) {$(this).parent().addClass(active);urlstatus true;} else {$(this).parent().…

动画演示 Delphi 2007 IDE 功能[3] - 修改属性

动画剧本:添加控件后用 F11 激活 Object Inspector 窗口;可用 ↑ ↓ 选择属性;用 Tab 切换属性名和属性值;用 Tab 切换到属性名后, 键入属性名的部分字母, 可迅速定位;用 Tab 切换到属性值后, 也可以键入字母选择, 而后回车确认.Ctrl↓ 可以选择其他控件;整个过程可以做到无鼠标…

kali怎么成为管理员_网站死链是什么、是怎么引起的以及死链对SEO优化的影响?...

网站死链是我们在做SEO时必不可少的一个错误&#xff0c;对于从事SEO行业的人员来说&#xff0c;网站死链最熟悉不过了&#xff0c;但是对于那些刚入SEO行业的新手来说&#xff0c;还是不太熟悉。今天我们就给大家讲一下什么是网站死链&#xff1f;网站死链是怎么引起的&#x…

Map-Reduce入门

1、Map-Reduce的逻辑过程 假设我们需要处理一批有关天气的数据&#xff0c;其格式如下&#xff1a; 按照ASCII码存储&#xff0c;每行一条记录每一行字符从0开始计数&#xff0c;第15个到第18个字符为年第25个到第29个字符为温度&#xff0c;其中第25位是符号/-006701199099999…

Java之泛型T T与T的用法

<T> T表示返回值是一个泛型&#xff0c;传递啥&#xff0c;就返回啥类型的数据&#xff0c;而单独的T就是表示限制你传递的参数类型&#xff0c;这个案例中&#xff0c;通过一个泛型的返回方式&#xff0c;获取每一个集合中的第一个数据&#xff0c; 通过返回值<T>…

UrlReWriter 使用经验小结

UrlRewriter 是微软封装好了的一个URL重写组件。使用它可以让我节约很多自已开发的时间。 好了&#xff0c;开始讲述我的应用经验&#xff0c;这只是很菜鸟的经验&#xff0c;高手就不用看了。 第一步&#xff0c;请从此下载此组件。解压&#xff0c;把UrlRewriter.dll copy到你…

clickhouse大数据分析技术与实战_从销售到经营——大客户销售策略与实战技术...

对于首席客户代表而言&#xff0c;要走出困局&#xff0c;所需要大客户销售策略性的训练&#xff0c;而不是像基层客户经理的销售技巧训练一样&#xff1b;新业务的学习固然重要&#xff0c;但更重要的是转化成实战绩效。从组织变革角度&#xff0c;每次成功的业务转型背后都意…

Hadoop_NameNode_代码分析_目录树(2)

&#xff08;1&#xff09;NameNode的内存中保存了庞大的目录树结构&#xff0c;这个结构用来保存文件目录结构和文件Block之间的映射&#xff0c;这种结构关系会固化在磁盘上&#xff0c;但是对树的改动频繁发生&#xff0c;什么时候将树写入磁盘呢&#xff1f;把每次操作应用…

详解 Visual C# 数据库编程

详解 Visual C# 数据库编程 ******2007-11-05 14:34关于数据库编程&#xff0c;微软提供了一个统一的数据对象访问模型&#xff0c;在Visual Studio6.0中称为ADO&#xff0c;在.NET中则统一为ADO.NET,掌握ADO.NET就等于掌握了数据库编程的核心。 针对数据库编程始终是程序设计语…

swift - 根试图控制器的手势返回冲突 - push 新的tabbar控制器手势冲突

1. 禁用手势 和开启手势extension JYRTSShopListController: UIGestureRecognizerDelegate {/// 禁止使用手势返回func forbidhenSideBack() {self.isCanSideBack falseif (self.navigationController?.responds(to:#selector(getter: self.navigationController?.interacti…

Acer 4750 安装黑苹果_黑苹果系统安装通用教程图文版

在开始之前&#xff0c;不管你要安装的是台式组装机&#xff0c;台式品牌机&#xff0c;一体机&#xff0c;还是笔记本&#xff0c;都要大概了解一下硬件信息。因为黑苹果的安装确实比安装Windows的系统要复杂的多。不管是前期准备工作&#xff0c;安装&#xff0c;还是安装之后…

IIS7中使用集成模式时出现HttpException

症状:在iis7在使用集成模式的Pool可能出现HttpException,而程序在经典模式下能正常运行. 解决方法:http://mvolo.com/blogs/serverside/archive/2007/11/10/Integrated-mode-Request-is-not-available-in-this-context-in-Application_5F00_Start.aspx 转载于:https://www.cnbl…

教你学会七种维护服务器安全最佳技巧

导读&#xff1a; 你的计算机上是否存在有至关重要的数据,并且不希望它们落入恶人之手呢?当然,它们完全有这种可能 。而且,近些年来,服务器遭受的风险也比以前更大了.越来越多的病毒,心怀不轨的黑客,以及那些商业间谍都将服务器作为了自己的目标.很显然,服务器的安全问题是不容…

mysql 快速生成百万条测试数据

转自&#xff1a;http://www.cnblogs.com/jiangxiaobo/p/6101072.html 1、生成思路 利用mysql内存表插入速度快的特点&#xff0c;先利用函数和存储过程在内存表中生成数据&#xff0c;然后再从内存表插入普通表中2、创建内存表及普通表 CREATE TABLE vote_record_memory (id I…