有N个人参加100米短跑比赛。跑道为8条。程序的任务是按照尽量使每组的人数相差最少的原则分组。
例如:
N=8时,分成1组即可。
N=9时,分成2组:一组5人,一组4人。
N=25时,分4组:7、6、6、6。
请编程计算分组数字。要求从键盘输入一个正整数(1~100之间,不必考虑输入错误的情况),表示参赛的人数。程序输出每个组的人数。从大到小顺序输出,每个数字一行。
比如,用户输入:25
程序输出:
7
6
6
例如:
N=8时,分成1组即可。
N=9时,分成2组:一组5人,一组4人。
N=25时,分4组:7、6、6、6。
请编程计算分组数字。要求从键盘输入一个正整数(1~100之间,不必考虑输入错误的情况),表示参赛的人数。程序输出每个组的人数。从大到小顺序输出,每个数字一行。
比如,用户输入:25
程序输出:
7
6
6
6
#include<stdio.h>int main(){int n;int a,b; scanf("%d",&n);a=n/8; if(n%8==0){ //能整除的情况 for(int i=0;i<a;i++)printf("8\n");}else{ //不能整除的情况 a=a+1;b=n/a;if(n%a!=0){printf("%d\n",b+1); }elseprintf("%d\n",b); for(int i=1;i<a;i++){printf("%d\n",b); }} return 0;
}