本文主要是介绍【dp】k上升段,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
思路:
有点像错排的dp
记得开long long
C o d e Code Code:
#include <iostream>
#include <cstdio>
using namespace std;long long f[25][25];
int n,k;int main()
{ freopen ("k.in","r",stdin);freopen ("k.out","w",stdout);scanf("%d%d",&n,&k);for(int i = 1; i <= n; i++) f[i][i] = 1;for(int i = 1; i <= n; i++)for(int j = 1;j < i; j++)f[i][j] = (i - j + 1) * f[i - 1][j - 1] + j * f[i - 1][j] ;//dpprintf("%lld",f[n][k] );return 0;
}
这篇关于【dp】k上升段的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!