1 老板要给员工发奖金n 元, 一次可以发1元, 也可以发2元, 也可以发n元,请问有多少种方法? ,
代码通过率 0
long long num;
void dfs(long long n, int sum){
if(n==sum){
num+=1;
return;
}
if(n>sum){
return;
}
for(int i=1 ;i<=sum ;i++){
dfs(n+i,sum);
}
return;
}
int CalulateMethodCount(int num_money ) {
// write code here
if(num_money<=2)
return num_money;
dfs(0,num_money);
return num;
}
输入 3
输出 4
说明:
1+1+1
1+2;
2+1;
3;
共4种
1+2;和 2+1;是一种呀方法呀
这道题不就是剑指offer的题么,讲道理应该挺简单的
麻烦可以看下我的代码思路吗? 看有没有问题 我真的找不到问题在哪 我想哭
这代码不是输入4 输出8 吗?
是 输入4 输出8
感觉答案就是 1 2 4 8 16 32
dp[1] =1 dp[2] =2 dp[3] =4
dp[4] = dp[1]+1 dp[2]+1 dp[3]+1 +1;
4 排列 恰好就是 1+3
2+2 1+1+2
1+1+1+1 2+1+1+1 1+2+1+1 3+1
4
是的 但是dfs也可以呀 但是通过率0 不知道问题出现在那?
找到队友了!!我也是百分之0,没道理啊,我用动规做,用2的n-1次方写,都不行,我还自己写main去调也不行,真是无语了。。。。
哎 我自己下来调 到现在还没有找到问题