思路:若当前数比前一个数大,则是上升,根据题意上升一层使用时间为6s;若当前数比前一个数小,则是下降,根据题意下降一层为4s;又因为在每一层都停留5s,所以时间需要再加上n*5.
#include<iostream>
using namespace std;
int main()
{
int a[101];
int n;
while(cin>>n,n)
{
int time=0;
if(n==0)return 0;
a[0]=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
//上升
if(a[i]>a[i-1])
{
time+=(a[i]-a[i-1])*6;
}
//下降
else
{
time+=(a[i-1]-a[i])*4;
}
}
int stime=time+n*5;
cout<<stime<<endl;
}
return 0;
}