乘积最大3 - 洛谷
乘积最大3
题目描述
请你找出 M 个和为 N 的正整数,他们的乘积要尽可能的大。
输出字典序最小的一种方案。
输入格式
一行,两个正整数 N,M
输出格式
M个和为N的,乘积尽可能的大的正整数。
样例 #1
样例输入
6 3
样例输出
2 2 2
提示
对于100%的数据1<= N <=10^9,1 <= M<=10^6。数据保证 N >=M。
代码区:
#include<stdio.h>
int main(){int n,m;scanf("%d%d",&n,&m);int avg=n/m;int arr[m]; //先给它们赋均值for(int i = 0;i < m;i++){arr[i]=avg;}int remainder=n%m;int i=m-1;//将存在的余数匀给平均数while(remainder&&i>=0){remainder--;arr[i]++;i--;}for(int i=0;i<m;i++){printf("%d ",arr[i]);}return 0;
}
欢迎各位读者提出意见。
(菜菜洛谷奋斗小日记)