题目 5965 奇怪的电梯
时间: 2023-05-25 11:03:31 浏览: 77
问题描述
某栋建筑有一个奇怪的电梯,它只能上升不下降,且每次只能上升 K 层(K 是一个正整数),电梯初始位置为第 0 层,目标楼层数为 N,请问最少需要乘坐多少次电梯才能到达目的楼层。
输入格式
共一行,输入两个整数 N 和 K。
输出格式
共一行,输出最少乘坐的次数,如果无法到达则输出 -1。
数据范围
1≤N≤10^6
1≤K≤N
输入样例:
10 2
输出样例:
4
样例解释:
第一次乘坐电梯到 2 层,第二次乘坐电梯到 4 层,第三次乘坐电梯到 6 层,第四次乘坐电梯到 10 层,共乘坐 4 次电梯。
相关问题
奇怪的电梯 c++ 深搜
这道题是一道深度优先搜索(DFS)的题目,需要从起点开始,不断地按照电梯的规则向上或向下移动,直到到达终点。在搜索的过程中,需要记录当前所在的楼层和已经按下的按钮次数,并且需要判断当前楼层是否已经被搜索过,以避免重复搜索。如果到达终点,则更新最少按键次数的值。最后输出最少按键次数即可。
参考代码如下(C++):
```
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 210;
int n, a, b;
int k[N];
int cnt = 0x7fffffff; // int 的最大值
void dfs(int step, int sum)
{
if (step == b) cnt = min(cnt, sum); // 到达终点,更新最少按键次数
if (sum > cnt) return; // 如果当前按键次数已经大于最少按键次数,直接返回
if (step + k[step] <= n) dfs(step + k[step], sum + 1); // 向上移动
if (step - k[step] >= 1) dfs(step - k[step], sum + 1); // 向下移动
}
int main()
{
scanf("%d%d%d", &n, &a, &b);
for (int i = 1; i <= n; i++) scanf("%d", &k[i]);
dfs(a, 0);
if (cnt == 0x7fffffff) puts("-1"); // 无法到达终点
else printf("%d\n", cnt);
return 0;
}
```
python练习题目
当然,我可以给你介绍一些Python练习题目。以下是一些常见的Python练习题目:
1. 编写一个程序,接受用户输入的数字,并计算它的阶乘。
2. 编写一个程序,接受用户输入的字符串,并将其中的大写字母转换为小写字母,小写字母转换为大写字母。
3. 编写一个程序,接受用户输入的字符串,并统计其中每个字符出现的次数。
4. 编写一个程序,接受用户输入的字符串,并判断该字符串是否为回文字符串。
5. 编写一个程序,接受用户输入的两个列表,并找出两个列表中的共同元素。
这些题目涵盖了Python中常见的基本操作和算法思想。希望对你的练习有所帮助!
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)