贪心算法(算法竞赛、蓝桥杯)--糖果传递

1、B站视频链接:A31 贪心算法 P2512 [HAOI2008] 糖果传递_哔哩哔哩_bilibili

题目链接:[HAOI2008] 糖果传递 - 洛谷

cpp 复制代码
#include <bits/stdc++.h> 
using namespace std;
const int N=1000005;
int n,a[N],c[N];
long long b,ans;

int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
		b+=a[i];
	}
	b=b/n;
	
	for(int i=2;i<=n;i++){
		c[i]=c[i-1]+a[i-1]-b;
	}
	sort(c+1,c+1+n);
	
	for(int i=1;i<=n;i++){
		ans+=abs(c[i]-c[(n+1)/2]);//取中位数 
	}
	printf("%lld\n",ans);
	
	return 0;
}
相关推荐
tankeven几秒前
HJ138 在树上游玩
c++·算法
lihihi33 分钟前
P1209 [USACO1.3] 修理牛棚 Barn Repair
算法
weixin_387534221 小时前
Ownership - Rust Hardcore Head to Toe
开发语言·后端·算法·rust
庞轩px1 小时前
MinorGC的完整流程与复制算法深度解析
java·jvm·算法·性能优化
Queenie_Charlie1 小时前
Manacher算法
c++·算法·manacher
闻缺陷则喜何志丹1 小时前
【树的直径 离散化】 P7807 魔力滋生|普及+
c++·算法·洛谷·离散化·树的直径
AI_Ming1 小时前
Seq2Seq-大模型知识点(程序员转行AI大模型学习)
算法·ai编程
若水不如远方1 小时前
分布式一致性(六):拥抱可用性 —— 最终一致性与 Gossip 协议
分布式·后端·算法
计算机安禾1 小时前
【C语言程序设计】第35篇:文件的打开、关闭与读写操作
c语言·开发语言·c++·vscode·算法·visual studio code·visual studio
Wect2 小时前
React Hooks 核心原理
前端·算法·typescript