美文网首页
A1008 Elevator (20分)

A1008 Elevator (20分)

作者: km15 | 来源:发表于2020-02-08 17:13 被阅读0次

    /*
    题意:
    1、给定一定的序列(所有数字不超过100)
    2、上升6秒,下降4秒,停留5秒,计算总时间

    解题:
    1、有一个total时间,初值为0,一个now记录当前层数,一个goal,记录目标层数
    2、如果now > goal,则(goal - now ) * 6+ 5
    如果goal小于now,则(now - goal)* 4 + 5
    如果goal == now,则直接加5

    learn && wrong:
    1、总是少using namespace std;
    2、修改了,dev是不会自动重新编译的,如果运行时上一次的,所以每次还是编译运行吧
    3、题解不错,每次都需要更新now,现在的楼层,以及停留在本层是需要的!
    */

    #include <iostream>
    using namespace std;
    int main(int argc, char** argv) {
        int num;
        cin >> num;
        
        int ans = 0,now =0, goal;   //总的时间,现在的楼层,目标楼层 
        for(int i = 0;i < num;++i){
            cin>>goal;
            if(now < goal){
                ans += (goal - now) * 6 + 5;
                now = goal;
            }else if(now > goal){
                ans += (now - goal) * 4 + 5;
                now = goal;
            } else{
                ans += 5;
                now = goal;
            }
        } 
        
        cout<<ans<<endl;
        return 0;
    }

    相关文章

      网友评论

          本文标题:A1008 Elevator (20分)

          本文链接:https://www.haomeiwen.com/subject/ylbixhtx.html