#include <iostream>
using namespace std;
const int N=2001;
const long long mod=2001;
int n,st,fin;
long long dp[N][N];
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
dp[1][1]=1;
cin>>n>>st>>fin;
for(int i=2;i<=n;i++)
{
for(int j=1;j<=i;j++)
{
if(i==st||i==fin)
{
dp[i][j]=(dp[i-1][j]+dp[i-1][j-1])%mod;
}
else
{
dp[i][j]=((dp[i-1][j-1]*(j-(i>st)-(i>fin)))%mod)+(dp[i-1][j+1]*j)%mod;
dp[i][j]%=mod;
}
}
}
cout<<dp[n][1]<<'\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |