问题链接:https://noi.vip/problem/1061
#include <stdio.h>
#include <stdlib.h>
long long mod = 1e9+9;
long long arr[3005][3005];
int main() {
long long people, group;
scanf("%lld %lld",&people,&group);
arr[1][1] = 1;
for(int i = 2 ; i <= people; i ++) {
for(int j = 1; j <= i; j++) {
arr[i][j] = arr[i-1][j-1]+j*arr[i-1][j];//单独放最后一个+最后一任选
if(arr[i][j]>mod)arr[i][j] %= mod;
}
}
printf("%lld",arr[people][group]);
}
这是个组合问题
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!