2. 数的划分

姓名:蔡**
赛道:普及组
类型:深搜
2. 数的划分
题目ID:7900必做题100分 时间限制: 2000ms 空间限制: 524288kB 题目描述 将整数 n n 分成 k k 份,且每份不能为空,问有多少种不同的分法。 当 n = 7 , k = 3 n=7, k=3 时,下面三种分法被认为是相同的: 1, 1, 5 1, 5, 1 5, 1, 1 输入格式 一行两个数 n n 和 k k。 ( 5 < n < 201 ; 1 < k < 7 ) (5<n<201; 1<k<7) 输出格式 一个整数,即不同的分法数。
是用深搜做吧,哪位大佬帮忙给一下代码?帮助必关。 在线等呕!!!!

1 个赞

(帖子已被作者删除)

等待中>>>

截图吧,这样很难受

等一下

(帖子已被作者删除)

呃呃…

屏幕截图 2026-02-26 202915

https://www.xinyoudui.com/ac/contest/74700DC09000A8D07BB08C/problem/6469

给个样例,我权限不足

(帖子已被作者删除)

样例 Input 1
7 3
Output 1
4

只有这一个吗

我不知道对不对

#include<bits/stdc++.h>
using namespace std;
int res=0;
void bk(int pos,int sum,int lt,int k,int n) {
    if(pos==k+1){
        if(sum==n)res++;
        return;
    }
    int maxi=(n-sum)/(k-pos+1);
    for (int i=lt;i<=maxi;i++){
        bk(pos+1,sum+i,i,k,n);
    }
    return;
}

int main() {
    int n, k;
    cin>>n>>k;
    bk(1,0,1,k,n);
    cout<<res;
    return 0;
}

1 个赞

在不在?我在等,我有题要做呢

对的OK!!!

谢谢谢谢