题目大意:
上一层电梯花费6秒,下一层电梯花费4秒,在任意层等待花费5秒
输入:
一行停留层数的序列
输出:
总花费时间
思路:
number数组用来存放序列
①初始在零层,先算出到达序列第一个值的层数的时间number[0]乘6
②从第一个值开始,依次往后比较
若下一个元素值比前一个元素值大,电梯往上走,总时间加上差值乘6
若下一个元素值比前一个元素值小,电梯往下走,总时间加上差值乘4
③最后加上每一次层的停留时间n乘5
代码:
#include<stdio.h>
int number[105];
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&number[i]);
}
int sum=n*5;
sum+=(number[0]*6);
for(int i=1;i<n;i++)
{
if(number[i]>number[i-1])
{
sum+=6*(number[i]-number[i-1]);
}
else
{
sum+=4*(number[i-1]-number[i]);
}
}
printf("%d",sum);
}