PAT 甲级 1008 Elevator 模拟
地址 https://pintia.cn/problem-sets/994805342720868352/problems/994805511923286016
题目大意 电梯起始位置为0 接受N个楼层请求,电梯上升一层需要时间6秒,下降一层需要时间4秒,停靠的楼层需要等待时间5秒 输入一系列楼层请求,请计算需要多少时间 输入格式 一行起始输入整数N 表示有N个楼层请求 后面接着输入N个数字表示楼层请求 空格隔开 输出格式 输出一个数字表示需要完成N个楼层请求的总时间 输入样例: 3 2 3 1 输出样例: 41
算法1
这个题目比较简单 就是纯模拟
一开始初始化当前位置是0 然后每接受一个楼层请求 就判断是上升还是下降
加入相应的时间,最后加入请求数*5 (每次请求都要停止等待5秒)
#include <iostream> using namespace std; const int N =150; int n; int arr[N]; int main(){ cin >> n; int curr =0; int ans =0; for(int i = 0;i < n;i++){ cin >> arr[i]; if(arr[i] >curr){ ans += (arr[i]-curr)*6; } if(arr[i]<curr){ ans += (curr-arr[i])*4; } curr=arr[i]; } ans += 5*n; cout << ans << endl; return 0; }
作 者: itdef
欢迎转帖 请保持文本完整并注明出处
技术博客 http://www.cnblogs.com/itdef/
B站算法视频题解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
欢迎c c++ 算法爱好者 windows驱动爱好者 服务器程序员沟通交流
如果觉得不错,欢迎点赞,你的鼓励就是我的动力
欢迎转帖 请保持文本完整并注明出处
技术博客 http://www.cnblogs.com/itdef/
B站算法视频题解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
欢迎c c++ 算法爱好者 windows驱动爱好者 服务器程序员沟通交流
如果觉得不错,欢迎点赞,你的鼓励就是我的动力
![阿里打赏](https://files.cnblogs.com/files/itdef/ali2.bmp)
![微信打赏](https://files.cnblogs.com/files/itdef/weixin2.bmp)