大佬捞捞 为啥dfs循环时k+1可以k++不可以16行处
  • 板块学术版
  • 楼主tekliu
  • 当前回复4
  • 已保存回复4
  • 发布时间2024/11/26 15:20
  • 上次更新2024/11/26 18:42:11
查看原帖
大佬捞捞 为啥dfs循环时k+1可以k++不可以16行处
1349005
tekliu楼主2024/11/26 15:20
#include<bits/stdc++.h>
using namespace std;
int a[999999];
int n=0,m,ans;
void dfs(int k){
if(!n) return;
if(k==m){
if(n>=a[k-1]){ans++;}
return;
}
for(int i=a[k-1];i<=n/(m-k+1);i++){
a[k]=i;
n-=i;
dfs(k+1);
n+=i;
}
}//层;
int main(){
cin>>n>>m;
a[0]=1;
dfs(1);
cout<<ans;
}
2024/11/26 15:20
加载中...