一道超级难的数学建模题!

问题描述:

一道超级难的数学建模题!
将数量为m的物品任意堆放成n堆,从每堆中任意取出1个堆放为新的一堆,请问这样的进程是否存在循环.请说明理由.

这题目有点意思.
将整数m任意写成n个整数之和,显然写法是有限的.
再从n个整数取1相加,得到新的整数,总和仍为m.
任意取一种情况,k为取的次数,将新的整数个数记为n[k].
显然1≤n[k]≤m,将整数m任意写成n[k]个整数之和,方案是有限的.
如果不存在循环,则对于任意k,m任意拆分成 n[k](1≤n[k]≤m)个整数,会有无限种组合,显然矛盾.
所以一定存在循环.