• 题目
有一部电梯,停在0层(国外习惯0层开始),上行每层需要6s,下行每层需要4s,每层停留5s,现在给出一组request表示该电梯的任务,计算完成该request所需时间。
• I/O
Sample Input:
3 2 3 1
Sample Output:
41
• 算法
直接算,数据非常弱,O(n)。
• 代码
#include<cstdio>
int main()
{ int quest[105];
int num;
scanf("%d",&num);
for(int i = 0; i< num; i++)
scanf("%d",&quest[i]);
int time = quest[0]*6+5;
int cur = quest[0];
for(int i = 1; i<num; i++)
{
if(quest[i]>cur)
time+=(quest[i]-cur)*6;
else
time+=(cur- quest[i])*4;
cur = quest[i];
time+=5;
}
printf("%d", time);
}