甲级-1008 Elevator (20 分)

题目:

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

解题思路:

根据输入序列依次计算每一次运行的时间,相加即可。
注意初始状态是在第0层,而非第1层

代码:

编译器:C++(g++)

#include <iostream>
using namespace std;

int main()
{
    int n,total=0;
    cin>>n;
    for(int i=0,pre=0;i!=n;++i)
    {
        int cur;
        cin>>cur;
        if(cur>=pre)
        {
            total+=(cur-pre)*6+5;
        }
        else
        {
            total+=(pre-cur)*4+5;
        }
        pre=cur;
    }
    cout<<total<<endl;
    return 0;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容