1020:电梯升降

来源:互联网 发布:自学程序员怎么入门 编辑:程序博客网 时间:2024/04/29 06:00
/*1020:电梯升降 分数: 1时间限制:1 秒内存限制:32 兆特殊判题: 否 提交:0解决: 0题目描述某城市最高的建筑只有一部电梯。一份电梯升降任务表由N个正整数组成,这些数字表示电梯按照给定的顺序停留的楼层号。电梯升一层花费6秒钟,降一层花费4秒钟,并且每次停留花费5秒钟。对于每一份任务表,你要计算出完成全部升降任务所花费的总时间。一开始,电梯在第0层,并且最终完成任务时电梯不必一定返回到0层。输入格式有多组测试样例。每组测试样例包含一个正整数N,接下来是N个正整数。在输入中,所有的数字都小于100。当N=0时,表示输入结束。输出对于每一组测试样例,在一行中输出总时间。样例输入1 23 2 3 10样例输出1741*/#include<iostream>using namespace std;int main(){int n;  do  {    cin>>n;if(n==0)break;int k[100];    for(int g=0;g<n;g++)    cin>>k[g];if(n==1)cout<<6*k[0]+5<<endl;   else   {int sum=0;    for(int i=0;i<n-1;i++)    if(k[i+1]>k[i])    sum+=(k[i+1]-k[i])*6;    else if(k[i+1]<k[i])    sum+=(k[i]-k[i+1])*4;cout<<sum+k[0]*6+5*n<<endl;   }  }while(n!=0);  exit(0);  }


0 0
原创粉丝点击