1348: 电梯
1.描述
在某一高层建筑内只有一部电梯,当你按下一个数时,电梯会运行到那一层。已知电梯每上升一层需6秒,下降一层需4秒,在需要停留的那层停留5秒。现有N个整数组成的一个需求列表,电梯将依次响应,电梯从0层开始运行,而在运行过程结束之前不会返回0层。
注意,若出现相邻两个整数相等,代表在同一层执行了两个不同任务,可以理解为:电梯已经停了5秒,正要关门时又有人在同一层按开门键,电梯又开门并停留5秒。
输入
输入分两行&#xff0c;第一行是一个正整数N&#xff08;N<&#61;1000)&#xff0c;代表停留几次&#xff0c;第二行的N个数字代表这几次依次停留的楼层。
输出
输出电梯完成该任务序列所需的时间&#xff0c;单独占一行。
样例输入
3
2 3 1
样例输出
41
提示
电梯从0层上升到2层运行时间为12秒&#xff0c;停留5秒&#xff0c;再上升第三层&#xff0c;运行时间6秒&#xff0c;停留5秒&#xff0c;再下降到第一层&#xff0c;运行时间8秒&#xff0c;停留5秒。共41秒。
2.代码
#include
#include
int main()
{int N,i;scanf("%d",&N);int x&#61;0,y,s,t&#61;0;for(i&#61;1;i<&#61;N;i&#43;&#43;){y&#61;x;scanf("%d",&x);if(x>y){s&#61;(x-y)*6;}if(x<y){s&#61;(y-x)*4;}if(x&#61;&#61;y){s&#61;0;}t&#61;s&#43;t;}printf("%d",5*N&#43;t);return 0;
}