首页 > 其他分享 >Roadside Trees (Simplified Edition) CodeForces - 265B

Roadside Trees (Simplified Edition) CodeForces - 265B

时间:2022-09-23 15:46:50浏览次数:43  
标签:int Liss 高度 CodeForces Trees 坚果 Edition Roadside

Roadside Trees (Simplified Edition) CodeForces - 265B

松鼠Liss喜欢坚果。一条街上有 n 棵树(从西到东编号为 1 到 n),每棵树的顶部都有一颗美味的坚果。
树的高度我很高。莉丝想吃所有的坚果。
现在,Liss位于编号为 1 的树的根上。在一秒钟内,Liss可以执行以下操作之一:

  • 在树上爬上或爬下一个单元。
  • 吃当前树顶部的坚果。
  • 跳到下一棵树。在这个动作中,Liss的高度不变。
    更正式地说,当Liss位于树 i 的高度 h[i] 时,她跳到树 i 的高度 h[i+1],
    如果 h[i] > h[i+1],则无法执行此操作。

计算吃掉所有坚果所需的最短时间(以秒为单位)。

Input

第一行包含整数 n(1≤n≤1e5)- 树木数量。
接下来的 n 行包含树的高度:第 i 行包含一个整数 hi(1≤hi≤1e4)- 编号为 i 的树的高度。

Output

打印一个整数-在几秒钟内吃掉所有坚果所需的最短时间。

Sample Input

2
1
2
5
2
1
2
1
1

Sample Output

5
14

分析

模拟题,需要注意跳的树是等高的,单向的。
可以简单画一个草图,看一下变化过程。

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e6+10, INF=0x3f3f3f3f;
int a[N],n;

int main(){
    // freopen("data.in", "r", stdin);
    while(~scanf("%d", &n)){
        for(int i=1; i<=n; i++) scanf("%d", &a[i]);
        int ans=-1;
        for(int i=1; i<=n; i++){
            ans += abs(a[i]-a[i-1])+2;
        }
        printf("%d\n", ans);
    }
    return 0;
}

标签:int,Liss,高度,CodeForces,Trees,坚果,Edition,Roadside
From: https://www.cnblogs.com/hellohebin/p/16722944.html

相关文章

  • Nikita and string CodeForces - 877B
    NikitaandstringCodeForces-877B有一个全由a和b组成的字符串,可以切成三部分。满足如下规则:第一部分只包含a或者是空串。第二部分只包含b或者是空串。第三部分只......
  • Barrels CodeForces - 1430B
    BarrelsCodeForces-1430B你有n个桶放在一排,从左到右开始编号分别为1~n.最初,第i桶装的水是ai升.你可以把水从一个桶倒到另一个桶。在这个过程中,你可以......
  • Fair Numbers CodeForces - 1465B
    FairNumbersCodeForces-1465B我们定义一个好数规则如下:它能够整除自己的每一个非零位。例如说,102是一个好数,因为它能整除1和2。282则不是,因为它不能整除8。......
  • Split Into Two Sets CodeForces - 1702E
    SplitIntoTwoSetsCodeForces-1702EPolycarp有一副有n张牌的(数字n为偶数)多米诺骨牌.每张多米诺骨牌上写有两个在1到n之间的数字.请问能否把骨牌分成两......
  • Boy or Girl CodeForces - 236A
    BoyorGirlCodeForces-236A如果一个人的用户名中不同的字符数是奇数,那么他就是一个男性,否则她就是一个女性(鬼知道为什么)。给你一个表示用户名的字符串,请帮助小A确定这......
  • Codeforces Round #811
    目录写在前面ABCDEFG写在最后写在前面比赛地址:https://codeforces.com/contest/1714。没什么整理价值的题,但是markdown语法及博客文风复健。A\(t\)组数据,每组数据......
  • Pair of Topics CodeForces - 1324D
    PairofTopicsCodeForces-1324D你有两个长度为n的数列a和b。现在我们定义,若存在i和j,满足:(i<j)且(a[i]+a[j]>b[i]+b[j]),则我们称数对<i,j>为JNU数对你的目......
  • Codeforces Round #298 (Div. 2) - D. Handshakes
    贪心+构造题意有\(n(1<=n<=2*10^5)\)个人,每分钟有一个人进入房间,房间里任意3个人可以组队开始工作并一直持续下去,且只要房间里至少有3个人,他们就可以在任意时间......
  • Codeforces Round #814
    难得遇上一把CF,结果unr了。AMainakandArray显然最优策略只有三种:选一个\(i\in[1,n-1]\)的\(a_i\)作为\(a_1\);选一个\(i\in[2,n]\)的\(a_i\)作为\(a......
  • Polycarp Writes a String from Memory CodeForces - 1702B
    PolycarpWritesaStringfromMemoryCodeForces-1702B给定大小为n的字符串,至多每3种不同的字母分为一组,最少将字符串分为多少组?Input第一行输入数据包含一个整......