当前位置: 首页 > wzjs >正文

个人做 下载类网站网站内页产品 首页推荐

个人做 下载类网站,网站内页产品 首页推荐,做门户网站的公司有哪些,东莞网站制作公司怎么选择题目 题解 每到一层楼都面临了两种选择:上还是下?因此我们可以定义一个布尔数组用来记录选择。 终止条件其实也明显,要么到了B层,要么没有找到楼层。 如果找到了,选择一个步骤少的方式。又怎么表示没有找到楼层&…

题目

题解

每到一层楼都面临了两种选择:上还是下?因此我们可以定义一个布尔数组用来记录选择。

终止条件其实也明显,要么到了B层,要么没有找到楼层。

如果找到了,选择一个步骤少的方式。又怎么表示没有找到楼层?

定义一个答案res,把它定义很大,如果找到了答案,更新最小值即可。

int res=1e9;

res = min(res,cnt);

这其实都很简单,关键在于怎么剪枝?

第一,找答案的过程中如果发现cnt>res,就可以剪掉了

第二,每一层尽可能只来一次,如果选择了相同的选择。就消耗了一定的cnt,不可取。如果选择了不同的方式,没找到B层也还行,如果找到了,那我们第一次到这个楼层的时候就该选这个不同的方式,整个方案就已经没有必要再进行下去了。所以综上,再选择的时候我们应该一个楼层最多走一次。

答案

#include <bits/stdc++.h>using namespace std;const int N = 210;int n;
int A,B;
int K[N];
int res = 1e9;
bool st[N] = {false};void dfs(int x,int cnt)
{if(cnt > res) return ;if(x == B){res = min(res,cnt);return ;}if(x+K[x] <= n && !st[x+K[x]]){st[x] = true;dfs(x+K[x],cnt+1);st[x]=false;}if(x-K[x] > 0 && !st[x+K[x]]){st[x] = true;dfs(x-K[x],cnt+1);st[x] = false;}}int main()
{cin >> n >> A >> B;for(int i = 1;i<=n;i++){cin >> K[i];}st[A]=true;dfs(A,0);if(res == 1e9){cout << "-1";return 0;}cout << res;return 0;
}

http://www.dtcms.com/wzjs/802522.html

相关文章:

  • 凯里建设网站海阳市建设工程交易中心网站
  • 买域名的网站深圳公众号小程序开发公司
  • 学网站建设要多少钱老网站文章突然无收录
  • 做同城相亲网站建设工程中标查询
  • 株洲网站建设企业百度指数网址是什么
  • 骏域网站建设视频投票网站怎么做的
  • 做蛋糕视频教学网站怎么对一个产品进行网络营销
  • 截图京东图片做网站茶文化网站设计免费
  • 网站为什么会被挂马交互式网站有哪些功能
  • 建个小型网站服务器怎么制作游戏辅助
  • 张家港网站设计建设大气网络公司网站源码
  • 做网站运营有前途吗创意家居网站建设与管理
  • 辽宁省住房和城乡建设厅网站打不开推动高质量发展的必要性
  • 医院网站建设的宗旨wordpress被禁
  • 重庆城乡建设局网站网站建设都需要什么费用
  • 风景网站模版网站设计培训学校
  • 上海软件培训网站建设网络全案推广
  • 私人公司怎么做网站黄骅港中铁招聘信息
  • 哪些网站做写字楼出租seo搜索引擎优化方法
  • 中国建设银行春招网站主机做网站服务器吗
  • 网站开发需要解决的问题ps做网站页面先后顺序
  • 学会网站开发需要多久网站提交收录入口
  • 网站开发就业方向长春网络公司排名
  • cloudflare做侵权网站软件技术的就业前景
  • 龙华企业网站建设wordpress 博客 注册
  • 免费建设一个网站主流网站开发采用
  • ps做网站图个人如何开网站
  • 查看公司股票的网站太原seo建站
  • 建企业版网站多久那些网站可以找得到做货代的
  • 苏州安岭网站建设公司腾讯企业邮箱电脑版登录入口