Pagini recente » Cod sursa (job #1838483) | Cod sursa (job #426041) | Cod sursa (job #3250724) | Cod sursa (job #934964) | Cod sursa (job #1496726)
#include <iostream>
#include <cstdio>
using namespace std;
const int Mod = 10007;
int main (){
int D[301][301];
freopen ( "permutari2.in", "r", stdin );
freopen ( "permutari2.out", "w", stdout );
cin.sync_with_stdio(false);
int N, K, x, y, Perm = 1;
cin >> N >> K;
D[1][1] = 1;
for ( int i = 2 ; i <= N ; ++i ){
x = ( Perm * i ) % Mod;
for ( int j = 2 ; j <= i ; ++j ){
y = 0;
for ( int k = j-1 ; k < i ; ++k ){
y += D[k][j-1] * D[i-k][1] % Mod;
if ( y >= Mod )
y -= Mod;
}
D[i][j] = y;
x -= y;
if ( x < 0 )
x += Mod;
}
D[i][1] = x;
}
cout << D[N][K];
return 0;
}