洛谷 B4359:[GESP202506 三级] 分糖果 ← 贪心算法

【题目来源】
https://www.luogu.com.cn/problem/B4359

【题目描述】
有 n 位小朋友排成一队等待老师分糖果。第 i 位小朋友想要至少 ai 颗糖果,并且分给他的糖果数量必须比分给前一位小朋友的糖果数量更多,不然他就会不开心。
老师想知道至少需要准备多少颗糖果才能让所有小朋友都开心。你能帮帮老师吗?

【输入格式】
第一行两个正整数 M,N,代表预算和商品数。
之后 N 行,每行一个商品,依次为 Si Pi Vi,代表第 i 个商品的商品名、价格、优先级。
数据保证不存在两个名字相同的商品。

【输出格式】
输出一行,一个整数,表示最少需要准备的糖果数量。

【输入样例】
4
1 4 3 3

【输出样例】
16

【数据范围】
对于所有测试点,保证1≤n≤1000,1≤ai≤10^9。

【算法分析】
简单的贪心算法题目。

【算法代码】

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

const int N=1e3+5;
int a[N];
long long ans;

int main() {
    int n;
    cin>>n;
    for(int i=1; i<=n; i++) {
        cin>>a[i];
        a[i]=max(a[i-1]+1,a[i]);
        ans+=a[i];
    }
    cout<<ans<<endl;
    return 0;
}

/*
in:
4
1 4 3 3

out:
16
*/

【参考文献】
https://gesp.ccf.org.cn/101/attach/1699464809021472.pdf
https://www.luogu.com.cn/problem/solution/B4359

相关推荐
专注仿真1 天前
Go操作Kubernetes API
贪心算法·golang·kubernetes
靠沿2 天前
贪心算法专题(三)
算法·贪心算法
学习星球2 天前
贪心算法精讲——贪心策略的“局部最优“如何通向全局最优?
算法·贪心算法
楠楠子呀5 天前
客户数据清洗与质量管理的通用流程
贪心算法·散列表·memcached·模拟退火算法·testlink
靠沿6 天前
贪心算法专题(二)
算法·贪心算法
Zzz 小生8 天前
Lazy Theta*:把昂贵的视线检测留到“真正需要”时再做
人工智能·算法·贪心算法·推荐算法
我变成萤火虫15 天前
反悔贪心(经典题目讲解)
c++·算法·贪心算法·stl·排序算法·反悔贪心
我变成萤火虫15 天前
河南萌新联赛2026第(四)场:南阳理工学院
数据结构·c++·算法·贪心算法·stl·动态规划
stolentime17 天前
AT_agc066_a [AGC066A] Adjacent Difference题解
c++·算法·贪心算法·构造