Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
116916 | 陈家宝 | 放苹果 | C++ | 通过 | 100 | 2 MS | 264 KB | 400 | 2023-12-20 14:02:56 |
#include<bits/stdc++.h> using namespace std; int t,n,m,ans,a[100001]; void dfs(int step,int sum,int minn){ if(sum==n&&step>m){ ans++; return; } if(sum>=n||step>m) return; for(int i=minn;i<=n;i++){ a[step]=i; dfs(step+1,sum+i,max(minn,i)); a[step]=0; } } int main(){ cin>>t; while(t--){ ans=0; cin>>n>>m; dfs(1,0,0); cout<<ans<<endl; } return 0; }