问题描述:
分糖果 幼儿园有n(<20)个孩子围成一圈分糖果,老师先随机地发给每个孩子若干颗糖果,然后按以下规则调整:每个孩子同时将自己手中的糖果分一半给坐在他右边的小朋友;如共有8个孩子,则第1个将原来的一半分给第2个,第2个将原有的一半分给第3个……第8个将原来的一半分给第1个,这样的平分动作同时进行;若平分前,某个孩子手中的糖果是奇数颗,则必须从老师那里要一颗,使他的糖果变成偶碰铅数。小孩人数和每个
小孩的初始数由键盘输入返吵衫。经过多少次调整,使每个孩子手中的糖果一样多,调整结束时每个孩子有糖果多少颗,在调整过程中老师又新增发了多少颗糖果。
解析:
倒!!!又是脑筋急转变!!!!!
都是高手看的东东。。。闪漏腔!
#include <stdio.h>void rerange(int x[])
{
int temp = x[0] / 2, l, m
l = temp
for (int i = 1 i < 10 i++)
{
m = x[i] / 2
x[i] = m + temp
temp = m
}
x[0] = temp + l
for (int i = 0 i < 10 i++)
{
printf("%d ", x[i])
if (x[i] % 2)
{
x[i] += 1
}
}
高卜 printf("\n")
}
int main()
{
int a[10] = {12, 2, 8, 22, 16, 4, 10, 6, 14, 20}
int n = 5
for (int i = 0 i < n i++)
辩贺{
printf("第%d次调整:\n", i + 1)
携念派 rerange(a)
}
return 0
}//解决请采纳
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)