http://pat.zju.edu.cn/contests/pat-a-practise/1008
弄明白 if ..if..if...yu if ..else if..else if...区别
前者,每次从上到下挨个判断
后者,每次循环只能选择一个判断
#include <stdio.h>
int main()
{
int n,i,current=0; //当前层current
int a[1000]; //请求序列
scanf("%d",&n);
int ans=0;
for (i=1;i<=n;i++)
{
scanf("%d",&a[i]); //输入n个请求
}
for (i=1;i<=n;i++)
{
int t=0,k=0; //处理一个请求耗费t1,层间隔k
if (a[i]>current)
{
k=a[i]-current;
t=k*6+5;
ans+=t;
current=a[i];
}
else if (a[i]<current)
{
k=current-a[i];
t=k*4+5;
ans+=t;
current=a[i];
}
else if (a[i]==current) //若请求是当前层,再停留5s
{
ans+=5;
}
}
printf("%d\n",ans);
return 0;
}