HDU 1008
程序员文章站
2024-03-17 08:43:58
...
这道题用来计算电梯上下过程中所花费的时间的和,我们使用vector来存储输入的楼层,通过比较前后楼层的大小来判断是上楼还是下楼,将分段花费的时间加起来即可!
AC代码:
#include <iostream>
#include <stdlib.h>
#include <vector>
#include <cmath>
using namespace std;
int N;
int main()
{
int x;
while(cin>>N){
vector<int> floor;
floor.push_back(0);
int time=0;
if(N==0)
break;
for(int i=0;i<N;i++){
cin>>x;
floor.push_back(x);
}
for(int i=0;i<N;i++){
if(floor[i+1]>floor[i]){
time+=(floor[i+1]-floor[i])*6+5;
}else if(floor[i+1]<floor[i]){
time+=(floor[i]-floor[i+1])*4+5;
}else
time+=5;
}
cout<<time<<endl;
}
return 0;
}
/*
1 2
3 2 3 1
0
*/