当前位置: 代码迷 >> 综合 >> 1008 Elevator(简单数学)
  详细解决方案

1008 Elevator(简单数学)

热度:84   发布时间:2024-03-07 06:11:16.0

在这里插入图片描述
题目大致意思:
电梯刚开始位于第0层,每上升一层需要花费6秒,每下降一层需要花费4秒,如果在在某一层需要上人,停靠的时间为5秒,给出一个电梯停靠序列,计算出所需要花费的时间。
大致思路:
可以用一个vector数组来接收电梯停靠的序列,在对数组遍历的过程中,进行计算即可。
提交结果如下:
在这里插入图片描述
提交代码如下:

#include<iostream>
#include<vector>
#include<cstdio>
using namespace std;
int main()
{
    int n;scanf("%d",&n);vector<int> arr(n+1);arr[0]=0;for(int i=1;i<n+1;i++){
    scanf("%d",&arr[i]);}int sum=0;for(int i=1;i<n+1;i++){
    if(arr[i]-arr[i-1]>0){
    sum=sum+(arr[i]-arr[i-1])*6;}elsesum=sum-(arr[i]-arr[i-1])*4;}sum=sum+n*5;cout<<sum<<endl;
}

本次提交后累计得分为804。