我已经编写了一段代码来解决一个问题。 这是问题的链接:https://brilliant.org/practice/bijections-overview/?p=2 我的建议是使用递归。我有3个元素要相加得到5,我从0到5迭代单个元素。
这是我的代码:
#include<bits/stdc++.h>
using namespace std;
int count_sum_5(int sum, int n)
{
if(n == 1) return 1;
for(int i = 0; i <= sum ; i++){
return 1 + count_sum_5(sum - i, n - 1);
}
}
int main()
{
int sum = 5;
int count_ele = 3;
cout << count_sum_5(sum, count_ele);
}
它的输出结果是3,我认为它只在i=0
时运行,而不在i=1,2,3,4,5
时运行。你能帮我吗?