private Number: total = 0 recurse(ArrayList<Number>: arr, Number: index, Number: candies) { // 三个参数分别代表士兵功劳的数组,当前进行到的数组第几项了,当前剩余多少个糖果没分 // 没糖果了就说明该分法正确 if(candies === 0) { total++ } // 已经到了最后一项,说明该分法不正确 if (index === arr.length) { return } // 从这个位置处不放糖果,到这个位置把剩余糖果全放了,遍历所有,回溯 for (int i = 0; i < candies; i++) { if (arr[index] 处能放下 i 个糖果) { recurse(arr, index + 1, candies - i) } } }
点赞 6

相关推荐

01-27 22:50
武汉大学 Java
点赞 评论 收藏
分享
2025-12-19 15:04
门头沟学院 Java
小肥罗:hr爱上你了,你负责吗哈哈
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务