代码改变世界

HDU1008——Elevator

2009-04-25 23:30  Logic0  阅读(344)  评论(0编辑  收藏  举报
我顶 字号:

http://acm.hdu.edu.cn/showproblem.php?pid=1008

 

/************************
*author:Logic0
*time  :2009-4-25
************************/


#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int
main()
{

    long
res = 0;
    int
now_pos = 0,move;
    int
n;
    cin>>n;
    while
(n != 0)
    {

        int
i;
        for
(i=1 ; i<=n ; i++)
        {

            cin>>move;
            if
(move > now_pos)
            {

                res += (move-now_pos)*6+5;
            }

            else

            {

                if
(move == now_pos)
                {

                    res += 5;
                }

                else

                {

                    res += (now_pos-move)*4+5;
                }
            }

            now_pos = move;
        }

        cout<<res<<endl;
        cin>>n;
        res = 0;
        now_pos = 0;
        move = 0;
    }

    return
0;
}

小郁闷了一下。

注意存在这样的数据

3 3 3 3

即停在某个楼层不动的情况。