从n个里面选k个不重样,本菜鸡一开始又是没有思路,然后想到如果k=2,只要两重for循环就行,第二个for循环从i+1开始
那这得k次循环,递归才行,但又想到:递归的话岂不是有很多种可能,返回怎么处理;传哪些参数也没有头绪;如果有两组数相加结果相同,该怎么去重…就又束手无策了
传递三个参数,递归次数标记k,开始位置start,到该次循环已累计相加的和sum
这样的话当k=0时就认为已经到达递归最深处,这时一并传过来的sum已经累加了k个数,接着判断sum,是素数则累加器加1。
至于之后递归的结束就不用管了
bool ifsushu(int x) {
for(int i=2;i<=

博客讲述了如何使用动态规划解决从n个数中选取k个不重复数的问题。作者最初从k=2的简单情况入手,通过两层循环理解问题,然后探讨了递归解法的思路,包括递归参数的选择、结果的去重策略。最终,通过递归函数,当k为0时检查累加和是否为素数,若是则计数器增加。
最低0.47元/天 解锁文章
1620

被折叠的 条评论
为什么被折叠?



