其实这题的意思就是类似于平均分的一道题。
题目意思:
1,字典序最小的一种方案:其实就是从小到大排序的意思
2,尽可能大:
我首先拿8和3来做个例子,8/3=2,8%3=2。
也就是说输出是建立在“2 2 2”的基础上输出的。
又因为“8%3=2”,那么3个2里面就会有2个2比中间值“2”大1.
所以输出就是“2 3 3”。
在这里要提醒一下,我同样拿8和3做例子。
上面的“2 3 3”乘积为18(2×3×3=6×3=18)。
但如果你说“2 2 4”也可以,那我给你分析一下:
“2 2 4”乘积为16(2×2×4=4×4=16)。
而16<18,所以只有“2 3 3”是对的。
听不懂的也可以结合代码来理解~~
以上代码为一种情况:
假设n和m呈倍数关系,那么我们可以直接用“/”来求出其中一个数(sum)。
然后再重复m次输出sum。
而这段代码是为了求出n和m不呈倍数的情况:
先用“/”求出中间值(sum)。
然后再用“n-sum×m”求出有几个数要大“1”,
而“number”就是用来看我需要输出多少个原来的sum。
当“number”归0时,也就意味着接下来的输出全部都为“sum+1”。