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
即停在某个楼层不动的情况。