PAT (Advanced Level) Practice 1008 Elevator(模拟题)

Elevator

The highest building in our city has only one elevator. A request list is made up with N positive numbers. The numbers denote at which floors the elevator will stop, in specified order. It costs 6 seconds to move the elevator up one floor, and 4 seconds to move down one floor. The elevator will stay for 5 seconds at each stop
For a given request list, you are to compute the total time spent to fulfill the requests on the list. The elevator is on the 0th floor at the beginning and does not have to return to the ground floor when the requests are fulfilled.

Input Specification

Each input file contains one test case. Each case contains a positive integer N, followed by N positive numbers. All the numbers in the input are less than 100.

Output Specification

For each test case, print the total time on a single line.

Sample Input

3 2 3 1

Sample Output

41

题意: 主要意思就是坐电梯,往上走1楼要6s,往下走1楼要4s,到达之后要停留5s。现在给一份清单,是电梯要到达的楼层,第一个数N表示一共要去N个地方。
AC代码

#include <stdio.h>

int main(){
	int n, a[105];
	scanf("%d", &n);
	for(int i = 0; i < n; i++) scanf("%d", &a[i]);
	int t = a[0] * 6 + 5;
	for(int i = 1; i < n; i++){
		int num = a[i] - a[i - 1];
		if(num >= 0) t += num * 6 + 5;
		else t += -num * 4 + 5;
	}
	printf("%d", t);
	return 0;
}

End


版权声明:本文为weixin_44494440原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。