奇怪的电梯

2024-04-11 00:44
文章标签 奇怪 电梯

本文主要是介绍奇怪的电梯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述:

 思路:

见代码注释

AC代码:

#include <bits/stdc++.h>
using namespace std;
int n, A, B;
int t[250]; //记录到达每层所用的最短时间
int a[250];
void dfs(int lou, int sum) {//lou是当前的楼层数,sum为当前按键次数t[lou] = sum;   //先进行赋值//下if (lou - a[lou] > 0 && sum + 1 < t[lou-a[lou]]) {dfs(lou - a[lou], sum + 1);}//上if (n >= a[lou] + lou && sum + 1 < t[lou+a[lou]]) {dfs(lou + a[lou], sum + 1);}
}
int main() {std::ios::sync_with_stdio(false); //减少cin和cout的用时memset(t, 0x7f7f7f7f, sizeof(t));//0x7f7f7f7f为int型最大值cin >> n >> A >> B;for (int i = 1; i <= n; i++) {cin >> a[i];}dfs(A, 0);//若t[B]的值没有改变即从未到达B楼层if (t[B] == 0x7f7f7f7f) {cout << -1;return 0;}cout << t[B];return 0;
}

这篇关于奇怪的电梯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/892617

相关文章

uva 10801(乘电梯dijkstra)

题意: 给几个电梯,电梯0 ~ n-1分别可以到达很多层楼。 换乘电梯需要60s时间。 问从0层到target层最小的时间。 解析: 将进入第0层的电梯60s也算上,最后减。 坑点是如果target为0输出0。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algori

CTF入门之奇怪的密码及图形编码总结篇(持续更新中ing)

CTF入门之奇怪的编码及图形编码(持续更新中ing UTF-8,unicode乱码社会主义核心价值观编码:在线解码: 与佛论禅:在线解密网站: 与熊论道:在线网站解密: 兽音:在线网站解密: 文本加密字母/汉字等等:文本加密为汉字 :文本加密为数字:文本加密为字母:文本加密为音乐符号:文本加密为国际音标:文本加密为盲文:文本加密为韩文:文本加密为日文:文本加密为花朵符号:文本加密为俄

面试or笔试5——超级电梯

有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或者二级,要走上m级,共有多少走法?注:规定从一级到一级有0种走法。 给定一个正整数int n,请返回一个数,代表上楼的方式数。保证n小于等于100。为了防止溢出,请返回结果Mod 1000000007的值。 测试样例: 3 返回:2 class GoUpstairs {public:int countWays(in

奇怪的分式 蓝桥杯

Description 上小学的时候,小明经常自己发明新算法。一次,老师出的题目是:  1/4 乘以 8/5   小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) 老师刚想批评他,转念一想,这个答案凑巧也对啊,真是见鬼! 对于分子、分母都是 1~9 中的一位数的情况,还有哪些算式可以这样计算呢? 请写出所有不同算式的个数(包括题中举例的)。 显然,

连号区间数 小明这些天一直在思考这样一个奇怪而有趣的问题:

package org.bluebridge.topics;/** 连号区间数小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就

命令模式的实际应用案例:从电梯控制系统到文本编辑器

命令模式的实际应用案例:从电梯控制系统到文本编辑器 引言 设计模式是软件工程中解决特定问题的经典方案,它们提供了灵活、可扩展的代码结构,能够在应对复杂系统设计时发挥重要作用。命令模式(Command Pattern)作为行为型设计模式之一,通过将请求封装为对象,使得请求的调用者与执行者解耦,从而实现请求的参数化和可撤销性。在实际应用中,命令模式广泛用于各种系统中,如电梯控制系统和文本编辑器等。

【求助帖】用PyTorch搭建MLP网络时遇到奇怪的问题

求助:我在测试自己搭建的通用MLP网络时,发现它与等价的参数写死的MLP网络相比效果奇差无比,不知道是哪里出了问题,请大佬们帮忙看下。 我写的通用MLP网络: class MLP(nn.Module):def __init__(self, feature_num, class_num, *hidden_nums):super().__init__()self.feature_num = fea

奇怪的信

题目描述 有一天, 小明收到一张奇怪的信, 信上要小明计算出给定数各个位上数字为偶数的和。 例如:5548,结果为12,等于 4 + 8 。 小明很苦恼,想请你帮忙解决这个问题。 输入格式 输入数据有多组。每组占一行,只有一个整整数,保证数字在32位整型范围内。 输出 对于每组输入数据,输出一行,每两组数据之间有一个空行。 样例输入 415326 3262 样例

男性必知:女人恋爱四个奇怪心理

1.女人喜欢用假意来转移真心 女性在恋爱时,常常希望自己的男朋友说:“亲爱的”,“没有你和我在一起,我很寂寞”,“我永远离不开你”等甜言蜜语。然而男性很少了解这一点 正因如此,女生会有意识地在男朋友面前与其他男性友好、亲热,企图激起男友的醋意,以考验男友的真诚程度,但现实中往往适得其反。因为,大多数男性对于女性的这种“移情”会信以为真,而主动退出恋爱,从而

【Rust每周一知】一种奇怪的表示 T::Item

我们都知道,Rust有一种叫 完全限定语法(fully-qualified syntax) 的东西。请看下面的例子: trait AAA {type Item;fn test();}struct Foo;impl AAA for Foo {type Item = String;fn test() {println!("a test.");}}fn main() {let f: Foo::It