又来吐苦水了。 第一想法是排列组合,按照前一个盘子的苹果数大于等于后一个盘子的苹果数量的规律去得到结果。 问题来了,弄了一会发现这个方法需要一个辅助数组/结构来记录前一个盘子的苹果数,而我是不愿意多安排一个数组的,所以就看了题解。 总觉得这个题在力扣做过相似的。 递归法的处理在于: 当苹果数m 小于盘子数n 时,那肯定至少有 n-m 个盘子是空的,所以只需求 m 个苹果在 m 个盘子里的排列结果,即 return search(m,m); 当苹果数 m 大于等于 盘子数 n 时,将情况分为了两种: a. 一种是假设所有盘子都先放一个苹果,那么还剩下 m-n 个苹果需要放到 n 个盘子里...