首页 / 题库

P90021 - 分发糖果

基础算法
通过次数2 提交次数4 内存限制 512MB 时间限制1秒

描述

老师想给孩子们分发糖果。有 $ N $ 个孩子站成一条直线,老师会根据每个孩子的表现,预先给他们一个评分(整数)。现在需要按照以下规则给孩子们分配糖果:

1. 每个孩子至少分配到 1 颗糖果。
2. 相邻的两个孩子中,评分较高的孩子必须获得更多的糖果(即如果相邻两个孩子的评分不同,则评分高的孩子拿到的糖果数必须严格大于评分低的孩子)。

请你计算,在满足上述要求的前提下,老师**至少**需要准备多少颗糖果。

输入

- 第一行包含一个整数 $ N ( 1 \le N \le 10^5 )$,表示孩子的数量。
- 第二行包含 $ N $ 个整数 $ S_1, S_2, \dots, S_N ( 0 \le S_i \le 10^3 )$,表示每个孩子的评分,相邻整数之间用空格隔开。

输出

输出一个整数,表示最少需要的糖果总数。

样例

  • 复制
  • 复制

提示

### 样例说明

三个孩子的评分分别为 `1, 0, 2`。一种最优的分配方案是:

- 第一个孩子(评分 1)分到 2 颗糖果;
- 第二个孩子(评分 0)分到 1 颗糖果;
- 第三个孩子(评分 2)分到 2 颗糖果。

总糖果数为 $ 2 + 1 + 2 = 5 $,且满足所有相邻关系$(1 > 0,2 > 0)$,因此最少需要 5 颗。

## 数据范围与约定

- $ 1 \le N \le 10^5 $
- $ 0 \le S_i \le 10^3 $

意见反馈

    最多上传3张图片,格式为JPG、PNG、JPEG,单张不超过5MB

    注册

    发送验证码

    密码必须包含数字、字母和特殊字符

    找回密码

    发送验证码

    密码必须包含数字、字母和特殊字符

    运行 ID:67149

    • 测试点1:Accepted
    • 用时:0 ms
    • 内存:288 kb
    • 测试点2:Accepted
    • 用时:0 ms
    • 内存:288 kb
    输入
    203
    输出
    203

    test

    测评信息

    错误.in文件下载

    错误.out文件下载

    运行 ID:67149

    2019-01-24 15:06:36