Submission #1298307

#TimeUsernameProblemLanguageResultExecution timeMemory
1298307nguyenletrungKangaroo (CEOI16_kangaroo)C++20
100 / 100
26 ms23052 KiB
#include<bits/stdc++.h> #define ll long long #define fi first #define se second #define ins insert #define pb push_back #define foru(i,a,b) for(int i=a;i<=b;i++) #define ford(i,a,b) for(int i=a;i>=b;i--) #define pii pair<int,int> #define pll pair<ll,ll> #define int ll using namespace std; int const mod=1e9+7; int n,cs,cf,cnt; int dp[2005][2005]; signed main() { ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0); // freopen(".inp","r",stdin); // freopen(".out","w",stdout); cin>>n>>cs>>cf; dp[1][1]=1; for(int i=1;i<=n;i++) { if(i==cs||i==cf) cnt++; for(int j=1;j<i;j++) { if(i==cs||i==cf) { dp[i][j+1]+=dp[i-1][j]; dp[i][j+1]%=mod; dp[i][j]+=dp[i-1][j]; dp[i][j]%=mod; } else { dp[i][j+1]+=(j+1-cnt)*dp[i-1][j]%mod; dp[i][j+1]%=mod; dp[i][j-1]+=(j-1)*(dp[i-1][j])%mod; dp[i][j-1]%=mod; } } } cout<<(dp[n][1]%mod+mod)%mod; } /* em thi cho du co khoc cung se den ngay phai quen thien duong van cho ngay em den */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...