Submission #1295757

#TimeUsernameProblemLanguageResultExecution timeMemory
1295757beater2k7Kangaroo (CEOI16_kangaroo)C++20
100 / 100
28 ms31764 KiB
#include<bits/stdc++.h> #define ll long long #define pii pair<ll,ll> using namespace std; ll dp[2005][2005]; const ll MOD=1e9+7; int main() { int n,cs,cf;cin>>n>>cs>>cf; dp[1][1]=1; for (int i=2;i<=n;i++){ for (int j=1;j<=n;j++){ if (i==cs || i==cf){ dp[i][j]=dp[i-1][j-1]+dp[i-1][j]; dp[i][j]%=MOD; } else{ dp[i][j]=(dp[i-1][j+1]*(j%MOD))%MOD+(dp[i-1][j-1]*((j-(i>cs) -(i>cf))%MOD))%MOD; dp[i][j]%=MOD; } } } cout<<dp[n][1]; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...