HDU - 1008 Elevator(模拟题)

来源:互联网 发布:手机制作效果图软件 编辑:程序博客网 时间:2024/04/29 13:29

题目大意:

电梯每6秒钟上升1层,每4秒钟下降一层,每个目标层留5秒

先输入一个整数n代表后面要输入多少个数字,然后输入n个数字,每个数字代表电梯要停在第几层。输出总时间。


解析:直接模拟,记录下上一层,每移动一次都和上一层进行比较。

#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int INF = 0x3f3f3f3f;int main() {int n,s;while( scanf("%d",&n) != EOF && n) {int floor = 0 , ans = 0;for(int i = 0; i < n; i++) {scanf("%d",&s);if(s > floor) {ans += (s - floor) * 6;}else {ans += (floor - s) * 4;}ans += 5;floor = s;}printf("%d\n",ans);}return 0;}



0 0
原创粉丝点击