hdu 1008

题目意思是:给你N个数字  每个数字表示多少层楼  现在要你从0层楼开始坐电梯  一次按顺序走过这些楼层

      规则是 上楼6秒 ,下楼4秒,每次到达一个楼层停5秒.....

思路:模拟

 

代码如下:(要注意的是 如果电梯没动 也就是temp==0,这也是一种情况.....被坑了..)

#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
int main()
{
    int n,floor[105];
    while(scanf("%d",&n)&&n)
    {
        memset(floor,0,sizeof(floor));
        int temp,ans=0;
        for(int i=1; i<=n; i++)
        {
            scanf("%d",&floor[i]);
            temp=floor[i]-floor[i-1];
            if(temp>0)
            {
                ans+=6*temp+5;
            }
            if(temp<0)
            {
                ans+=-4*temp+5;
            }
            if(temp==0)
                ans+=5;
        }
        printf("%d\n",ans);
    }
}

 

posted @ 2016-06-07 12:35  果冻0_0  阅读(130)  评论(0编辑  收藏  举报