1 条题解
-
0
剪枝优化最简单的一集。
#include<bits/stdc++.h> using namespace std; int n,m,ans=0; void dfs(int cnt,int i,int sum){ if(cnt==m){ if(n-sum>=i) ans++; return; } int c=(n-sum)/(m-cnt+1); for(int j=i;j<=c;j++){ dfs(cnt+1,j,sum+j); } return; } int main(){ cin>>n>>m; dfs(1,1,0); cout<<ans; }
😕
- 1
信息
- ID
- 488
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 3
- 标签
- 递交数
- 25
- 已通过
- 18
- 上传者