解题思路:见注释
注意事项:
参考代码:
#include<stdio.h>
int judge(int a[],int n)//用于判断小朋友手里的糖是否相同
{
int flog=a[0],k=0;
for(int i=1;i<n;i++)
{
if(a[i]!=flog)
{
k=1;
break;
}
}
if(k==1) return 0;
else return 1;
}
int main()
{
int N,a[101],i,index=0;
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
while(judge(a,N)!=1)
{
a[100]=a[N-1]/2;//额外一个位置存最后一位小孩分给别人的糖
for(i=N-1;i>0;i--)//执行小盆友间的分糖
{
a[i]=a[i]/2;
a[i]+=a[i-1]/2;
}
a[i]/=2;
a[i]+=a[100];
for(i=0;i<N;i++)//执行老师补糖
{
if(a[i]%2!=0)
{
a[i]++;
index++;//计数
}
}
}
printf("%d\n",index);
return 0;
}
0.0分
0 人评分
C语言训练-最大数问题 (C语言代码)浏览:648 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:573 |
兰顿蚂蚁 (C++代码)浏览:1225 |
上车人数 (C语言代码)浏览:816 |
【偶数求和】 (C语言代码)浏览:674 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1334 |
WU-图形输出 (C++代码)浏览:836 |
WU-链表数据求和操作 (C++代码)浏览:1385 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:750 |
【偶数求和】 (C语言代码)浏览:460 |