学习C++从娃娃抓起!记录下在学而思小猴编程学习过程中的题目,记录每一个瞬间。侵权即删,谢谢支持!
附上汇总贴:小猴编程C++ | 汇总-CSDN博客
【题目描述】
小猴有
n
n
n袋糖果,编号为
1
∼
n
1\sim n
1∼n,编号为
i
i
i的袋子中有
a
i
a_i
ai个糖果。
恰好小猴有
n
n
n个好朋友,小猴想要给每个朋友一袋糖果,但是为了不让任何朋友感到不安,小猴需要从每个袋子中吃掉一些糖果,使得所有袋子中的糖果数量都一样。
小猴可以选择任意一个袋子吃到任意数量的糖果,但是不能在任何袋子中添加糖果。
请你帮助小猴计算最少需要吃掉多少个糖果才能满足要求。
【输入】
第一行,一个整数
n
n
n。
第二行,
n
n
n个正整数
a
1
,
a
2
,
…
,
a
n
a_1,a_2,\dots ,a_n
a1,a2,…,an。
【输出】
一行,一个整数,表示小猴最少需要吃掉多少个糖果。
【输入样例】
5
1 2 3 4 5
【输出样例】
10
【代码详解】
#include <bits/stdc++.h>
using namespace std;
int n, a[100010], mn = 10000;
int main()
{
cin >> n;
for (int i=1; i<=n; i++) { // 输入糖果
cin >> a[i];
mn = min(mn, a[i]); // 找到最少糖果数量
}
int ans = 0;
for (int i=1; i<=n; i++) { // 遍历n个袋子
ans += a[i] - mn; // 计算每个袋子与最小值的差,即要吃掉的糖果
}
cout << ans << endl; // 输出结果
return 0;
}
【运行结果】
5
1 2 3 4 5
10