P1025 [NOIP2001 提高组] 数的划分
https://www.luogu.com.cn/problem/P1025
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N = 10;
int n,k;
int ans;
int st[N];
void dfs(int last,int left,int step)//利用last来保证这次选的数一定大于等于上次选的数
{
if(left<0)return;
if(step==k+1)
{
if(left==0)
{
// for(int i=1;i<=3;i++)
// cout << st[i] << ' ';
// cout << endl;
ans++;
}
return;
}
for(int i=last;i<=left;i++)
{
// st[step]=i;
dfs(i,left-i,step+1);
}
}
int main()
{
cin >> n >> k;
dfs(1,n,1);
cout << ans << endl;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】