P1016禾木分核桃 普及- 新手组 贪心 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 通过/尝试次数 2795/3291 题目描述 教室里有 n ( 1 ≤ n ≤ 100 ) n(1≤n≤100) 位同学,每位同学都有若干颗核桃,第 i i 位同学拥有 a i ( 0 ≤ a i ≤ 100 ) a i (0≤a i ≤100) 颗核桃。 禾木带来了满满的一箱核桃,他今天的目标是分给一些同学核桃,使得这 n n 位同学拥有的核桃的数量都相同。 但是核桃吃多了会长胖,所以禾木希望在满足 每位同学拥有的核桃数量都相同 前提下,分给这 n n 位同学的核桃总数尽可能地少。 问:禾木至少需要分给 n n 位同学的核桃总数是多少? 注: 禾木只能分出去核桃,而不能抢夺同学们手中的核桃; 本题假设全程没有同学偷偷把自己的核桃吃掉; 本题假设禾木拥有的核桃是可以保证每位同学拥有相同数量的核桃的(足够多); 禾木分出去的核桃都是整数个(没有破损的核桃)。 输入格式 输入的第一行包含一个整数 n ( 1 ≤ n ≤
```cpp #include <iostream> #include <algorithm> using namespace std; int main() { int n; cin >> n; int a[105]; int sum = 0; // 读取每个同学的核桃数并计算总和 for (int i = 0; i < n; i++) { cin >> a[i]; sum += a[i]; } // 计算初始的平均核桃数 int average = sum / n; // 若平均有剩余,需要增加平均核桃数以满足要求 if (sum % n != 0) { average++; } // 计算需要额外分配的核桃数 int result = 0; for (int i = 0; i < n; i++) { if (a[i] < average) { result += average - a[i]; } } cout << result << endl; return 0; } ``` 代码解释: 1. 输入处理:首先读取同学的数量`n`,接着用数组`a`存储每个同学初始的核桃数,同时累加所有同学的核桃总数存于`sum`。 2. 计算平均核桃数:求出初始的平均核桃数`average`,若总和`sum`不能被`n`整除,需要将平均核桃数加 1,保证有足够的核桃分给每位同学。 3. 计算需额外分配的核桃数:遍历数组`a`,若某个同学的核桃数小于平均核桃数,就计算出该同学需要的额外核桃数,并累加到`result`中。 4. 输出结果:输出`result`,即禾木至少需要分出去的核桃总数。 [2026-02-07 18:37:04 | AI问答 | 404点数解答]
- [字节豆包] P1016禾木分核桃 普及- 新手组 贪心 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 通过/尝试次数 2795/3291 题目描述 教室里有 n ( 1 ≤ n ≤ 100 ) n(1≤n≤100) 位同学,每位同学都有若干颗核桃,第 i i 位同学拥有 a i ( 0 ≤ a i ≤ 100 ) a i (0≤a i ≤100) 颗核桃。 禾木带来了满满的一箱核桃,他今天的目标是分给一些同学核桃,使得这 n n 位同学拥有的核桃的数量都相同。 但是核桃吃多了会长胖,所以禾木希望在满足 每位同学拥有的核桃数量都相同 前提下,分给这 n n 位同学的核桃总数尽可能地少。 问:禾木至少需要分给 n n 位同学的核桃总数是多少? 注: 禾木只能分出去核桃,而不能抢夺同学们手中的核桃; 本题假设全程没有同学偷偷把自己的核桃吃掉; 本题假设禾木拥有的核桃是可以保证每位同学拥有相同数量的核桃的(足够多); 禾木分出去的核桃都是整数个(没有破损的核桃)。 输入格式 输入的第一行包含一个整数 n ( 1 ≤ n ≤(404点数解答 | 2026-02-07 18:37:04)3
- [DeepSeek] - ItemId: 12720 #道具id A级赛车 雷诺 ItemNum: 1 #数量 ObtainTime: 1 #时间 AvailPeriod: -1 #0显示数量 -1显示永久 - ItemId: 127758 #道具id 宠物 冰凤 ItemNum: 1 #数量 ObtainTime: 1 #时间 AvailPeriod: -1 #0显示数量 -1显示永久 - ItemId: 21980 #道具id 效率宝珠LV4 ItemNum: 100 #数量 ObtainTime: 1 #时间 AvailPeriod: 0 #0显示数量 -1显示永久 - ItemId: 21986 #道具id 重生宝珠LV4 ItemNum: 100 #数量 ObtainTime: 1 #时间 AvailPeriod: 0 #0显示数量 -1显示永久 这种文本文件如何用易语言读入并显示到超级列表框内 (571点数解答 | 2025-08-23 20:54:40)199
- [DeepSeek] - ItemId: 12720 #道具id A级赛车 雷诺 ItemNum: 1 #数量 ObtainTime: 1 #时间 AvailPeriod: -1 #0显示数量 -1显示永久 - ItemId: 127758 #道具id 宠物 冰凤 ItemNum: 1 #数量 ObtainTime: 1 #时间 AvailPeriod: -1 #0显示数量 -1显示永久 - ItemId: 21980 #道具id 效率宝珠LV4 ItemNum: 100 #数量 ObtainTime: 1 #时间 AvailPeriod: 0 #0显示数量 -1显示永久 - ItemId: 21986 #道具id 重生宝珠LV4 ItemNum: 100 #数量 ObtainTime: 1 #时间 AvailPeriod: 0 #0显示数量 -1显示永久 这种文本文件如何用易语言读入并显示到超级列表框内,并且可以增加新的一样的文本(1317点数解答 | 2025-08-23 20:58:40)206
- [字节豆包] P1019小核桃与积木堆 普及- CSP-J组 排序 贪心 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 通过/尝试次数 1787/2245 题目描述 数字线上的某些整数坐标处有 n n 个积木,小核桃不喜欢积木四处散落。所以他打算搬动积木,堆成不超过 m m 堆的积木堆。将坐标值 X X 的积木全部搬到到坐标值 Y Y 处,需要消耗 ∣ X − Y ∣ ∣X−Y∣ 的能量。 计算小核桃把玩具堆成不超过 m m 堆需要消耗的最小能量值。 输入描述 第一行包含两个整数,之间以一个空格隔开,分别是 n n, m m, n n 代表积木总数量, m m 代表最大堆数。 第二行包含 n n 个整数, x i x i 表示积木 i i 所处坐标值为 a i a i ,之间以一个空格隔开。 输出描述 计算出把积木堆成不超过 m m 堆需要消耗的最小能量值。 input1 复制 4 1 10 5 3 12 output1 复制 9 input2 复制 4 2 1 20 3 100 output2 复制(780点数解答 | 2026-02-07 18:38:58)3
- [字节豆包] P1015禾木与栅栏 普及- 模拟 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 通过/尝试次数 2998/4446 题目描述 面条老师给禾木一个任务,让他根据给定的 n n 和 k k ,打印出一个栅栏图案,这个栅栏应该分成 n n 段,段与段之间的间隔为 | ,段内的填充为 k k 个 = 。 例如 n = 5 , k = 6 n=5,k=6 时,栅栏图案如下: 复制 |======|======|======|======|======| 输入格式 输入包括一行,包含两个整数 n , k n,k,表示栅栏的段数和每一段中填充的数量。 输出格式 输出包括一行,表示符合要求的栅栏图案。 input1 复制 1 1 output1 复制 |=| input2 复制 5 5 output2 复制 |=====|=====|=====|=====|=====| 提示 对于 100 % 100% 的数据,保证 1 ≤ n , k ≤ 15 1≤n,k≤15,用C++(160点数解答 | 2026-02-07 18:36:06)3
- [字节豆包] P1013禾木买铅笔 入门 新手组 简易运算 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 通过/尝试次数 5398/7864 题目描述 宇航老师给了禾木 a a 元 b b 角钱去购买铅笔,已知一支铅笔价格为 x x 元 y y 角,请你编程帮助禾木算出他可以购买几支铅笔。 输入格式 输入包括两行。 第一行包含两个正整数 a , b a,b ,表示宇航老师给禾木的钱为 a a 元 b b 角。 第二行包含两个正整数 x , y x,y ,表示铅笔的价格为 x x 元 y y 角。 输出格式 输出包括一行,包含一个整数,代表禾木可以购买铅笔的数量。 input1 复制 4 6 2 3 output1 复制 2 input2 复制 100 5 2 3 output2 复制 43 提示 对于 100 % 100% 的数据,保证: 1 ≤ a , x ≤ 10 5 1≤a,x≤10 5 , 0 ≤ b , y ≤ 9 0≤b,y≤9。 用C++(390点数解答 | 2026-02-07 18:42:51)3
- [字节豆包] 题目(description): 卫星导航系统(如我国自主研发的北斗卫星导航系统)能实时获取位置、速度、时间等时空信息,在交通运输、农林渔业、气象测报、通信授时、救灾减灾、公共安全等领域都得到了广泛应用。 在应用层面,卫星导航系统一般以报文方式进行数据传输,其中$gprmc是常用报文之一,基本的格式如下: $gprmc,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <1> utc时间,hhmmss.sss(时分秒.毫秒)格式 <2> 定位状态,a=有效定位,v=无效定位 <3> 纬度ddmm.mmmm(度分)格式 <4> 纬度半球n(北半球)或s(南半球) <5> 经度dddmm.mmmm(度分)格式 <6> 经度半球e(东经)或w(西经) <7> 地面速率(000.0~999.9节) <8> 地面航向(000.0~359.9度,以正北为参考基准) <9> utc日期,ddmmyy(日月年)格式 <10> 磁偏角(000.0~180.0度,前面的0也(385点数解答 | 2025-01-08 03:43:54)435
- [字节豆包] 题目(description): 卫星导航系统(如我国自主研发的北斗卫星导航系统)能实时获取位置、速度、时间等时空信息,在交通运输、农林渔业、气象测报、通信授时、救灾减灾、公共安全等领域都得到了广泛应用。 在应用层面,卫星导航系统一般以报文方式进行数据传输,其中$gprmc是常用报文之一,基本的格式如下: $gprmc,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <1> utc时间,hhmmss.sss(时分秒.毫秒)格式 <2> 定位状态,a=有效定位,v=无效定位 <3> 纬度ddmm.mmmm(度分)格式 <4> 纬度半球n(北半球)或s(南半球) <5> 经度dddmm.mmmm(度分)格式 <6> 经度半球e(东经)或w(西经) <7> 地面速率(000.0~999.9节) <8> 地面航向(000.0~359.9度,以正北为参考基准) <9> utc日期,ddmmyy(日月年)格式 <10> 磁偏角(000.0~180.0度,前面的0也(346点数解答 | 2025-01-08 03:46:29)431
- [DeepSeek] P3632国王游戏(弱化版)c++ 入门 排序 贪心 标准IO 传统题 时间限制 1000ms 内存限制 256MB 通过/尝试次数 382/1181 来源 TomAnderson 题目描述 恰逢 H 国国庆,国王邀请 n n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。 国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。注意,国王的位置始终在队伍的最前面。 输入格式 第一行包含一个整数 n n,表示大臣的人数。 第二行包含两个整数 a a 和 b b,之间用一个空格隔开,分别表示国王左手和右手上的整数。 接下来 n n 行,每行包含两个整数 a a 和 b b,之间用一个空格隔开,分别表示每个大臣左手和右手(550点数解答 | 2025-04-28 18:16:50)375
- [DeepSeek] P3632国王游戏(弱化版) 入门 排序 贪心 标准IO 传统题 时间限制 1000ms 内存限制 256MB 通过/尝试次数 606/1828 来源 TomAnderson 题目描述 恰逢 H 国国庆,国王邀请 � n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 � n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。 国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。注意,国王的位置始终在队伍的最前面。 输入格式 第一行包含一个整数 � n,表示大臣的人数。 第二行包含两个整数 � a 和 � b,之间用一个空格隔开,分别表示国王左手和右手上的整数。 接下来 � n 行,每行包含两个整数 � a 和 � b,之间用一个空格隔开,分别表示每个大臣左手和右手上的整(1002点数解答 | 2025-05-10 20:58:15)179
- [DeepSeek] C++ P3632国王游戏(弱化版) 入门 排序 贪心 标准IO 传统题 时间限制 1000ms 内存限制 256MB 通过/尝试次数 606/1828 来源 TomAnderson 题目描述 恰逢 H 国国庆,国王邀请 � n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 � n 位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。 国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。注意,国王的位置始终在队伍的最前面。 输入格式 第一行包含一个整数 � n,表示大臣的人数。 第二行包含两个整数 � a 和 � b,之间用一个空格隔开,分别表示国王左手和右手上的整数。 接下来 � n 行,每行包含两个整数 � a 和 � b,之间用一个空格隔开,分别表示每个大臣左手和(507点数解答 | 2025-05-10 20:59:01)164
- [字节豆包] T1188密码锁 超难 2024 贪心 STEMA dp T6 1月 区间DP 标准IO 传统题 来源 TomAnderson 时间限制 1000ms 内存限制 256MB 提示信息: 密码锁:由 n 个从左到右并排的圆环组成,每个圆环上都有 10 个数字(0~9),蓝色框内为密码显示区,每个圆环在密码显示区只能显示一个数字,如图所示。可以拨动圆环,来改变密码显示区显示的数字。 当密码显示区的数字与密码一致时,密码锁就会被打开。 image 编程实现: 有一个由 n 个圆环组成的密码锁,和一个 n 位的密码 S(S 由 1~9 中的数字(包含 1 和 9)组成)。每次操作只能选择一个或位置连续的多个圆环拨动。当 S 中的字符从左到右依次显示在密码显示区时,密码锁会被打开。 已知每个圆环在密码显示区初始数字都为 0,请计算最少需要操作多少次,才能打开密码锁。 注意: 1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到密码显示区,表示 1 次操作; 例如:将第 3 个圆环拨动到数字 4,表示 1 次操作: image 2、如果选择了位置连续的多个圆环,只能将这些圆环(718点数解答 | 2025-11-08 22:09:01)72