杭电1008简单题
简单题,大意是坐电梯,从0层楼开始坐。 上升 一层楼要用6秒,下降一层楼要用4秒,在某层楼停住要停5秒。
http://acm.hdu.edu.cn/showproblem.php?pid=1008这是网址
Sample Input
1 2
3 2 3 1
0
Sample Output
17
41
我写了程序,也AC了,只是里面有一点不清楚。
这是我原来的代码
#include<iostream>using namespace std;int main(int argc, char* argv[]){ int n,m,a,b,i,k,sum,p; while(cin>>m&&m) { sum=0; a=0; for(i=0;i<m;i++) { cin>>b; k=b-a; if(k)//这里错了 { sum=sum+6*(b-a);a=b; } if(!k) { sum=sum+4*(a-b);a=b; } } sum=sum+5*m; cout<<sum<<endl; } return 0;}#include<iostream>using namespace std;int main(int argc, char* argv[]){ int n,m,a,b,i,k,sum,p; while(cin>>m&&m) { sum=0; a=0; for(i=0;i<m;i++) { cin>>b; k=b-a; if(k>0)//ac的代码 { sum=sum+6*(b-a);a=b; } if(k<0) { sum=sum+4*(a-b);a=b; } } sum=sum+5*m; cout<<sum<<endl; } return 0;}