# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
839189 | 2023-08-29T02:55:32 Z | guagua0407 | Kangaroo (CEOI16_kangaroo) | C++17 | 20 ms | 23092 KB |
//#pragma GCC optimize("O3") #include <bits/stdc++.h> using namespace std; #define ll long long #define pii pair<int,int> #define f first #define s second #define all(x) x.begin(),x.end() #define _ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); void setIO(string s) { freopen((s + ".in").c_str(), "r", stdin); freopen((s + ".out").c_str(), "w", stdout); } const int mxn=2005; const int mod=1e9+7; ll dp[mxn][mxn]; int cnt=0; int main() {_ int n,st,en; cin>>n>>st>>en; if(st>en) swap(st,en); dp[1][1]=1; if(1==st) cnt++; for(int i=1;i<n;i++){ if(i+1==st){ // new for(int j=1;j<=i;j++){ dp[i+1][j+1]=(dp[i+1][j+1]+dp[i][j])%mod; } // continue for(int j=1;j<=i;j++){ dp[i+1][j]=(dp[i+1][j]+dp[i][j]*j)%mod; } cnt++; } else if(i+1==en){ // new for(int j=1;j<=i;j++){ dp[i+1][j+1]=(dp[i+1][j+1]+dp[i][j])%mod; } // continue for(int j=1;j<=i;j++){ dp[i+1][j]=(dp[i+1][j]+dp[i][j]*(j-1+(i==n-1 and j==1)))%mod; } cnt++; } else{ // new for(int j=1;j<=i;j++){ dp[i+1][j+1]=(dp[i+1][j+1]+dp[i][j])%mod; } // combine for(int j=1;j<=i;j++){ dp[i+1][j-1]=(dp[i+1][j-1]+dp[i][j]*(j*(j-1)-(j-1)*cnt+(cnt==2 and i==n-1)))%mod; } } } cout<<dp[n][1]<<'\n'; return 0; } //maybe its multiset not set
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 468 KB | Output is correct |
5 | Correct | 1 ms | 460 KB | Output is correct |
6 | Correct | 1 ms | 468 KB | Output is correct |
7 | Correct | 1 ms | 468 KB | Output is correct |
8 | Correct | 0 ms | 456 KB | Output is correct |
9 | Correct | 1 ms | 468 KB | Output is correct |
10 | Correct | 1 ms | 468 KB | Output is correct |
11 | Correct | 1 ms | 468 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 468 KB | Output is correct |
5 | Correct | 1 ms | 460 KB | Output is correct |
6 | Correct | 1 ms | 468 KB | Output is correct |
7 | Correct | 1 ms | 468 KB | Output is correct |
8 | Correct | 0 ms | 456 KB | Output is correct |
9 | Correct | 1 ms | 468 KB | Output is correct |
10 | Correct | 1 ms | 468 KB | Output is correct |
11 | Correct | 1 ms | 468 KB | Output is correct |
12 | Correct | 1 ms | 1236 KB | Output is correct |
13 | Correct | 1 ms | 1108 KB | Output is correct |
14 | Correct | 1 ms | 1236 KB | Output is correct |
15 | Correct | 1 ms | 1236 KB | Output is correct |
16 | Correct | 1 ms | 1236 KB | Output is correct |
17 | Correct | 1 ms | 1228 KB | Output is correct |
18 | Correct | 1 ms | 1108 KB | Output is correct |
19 | Correct | 1 ms | 1232 KB | Output is correct |
20 | Correct | 2 ms | 1228 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 468 KB | Output is correct |
5 | Correct | 1 ms | 460 KB | Output is correct |
6 | Correct | 1 ms | 468 KB | Output is correct |
7 | Correct | 1 ms | 468 KB | Output is correct |
8 | Correct | 0 ms | 456 KB | Output is correct |
9 | Correct | 1 ms | 468 KB | Output is correct |
10 | Correct | 1 ms | 468 KB | Output is correct |
11 | Correct | 1 ms | 468 KB | Output is correct |
12 | Correct | 1 ms | 1236 KB | Output is correct |
13 | Correct | 1 ms | 1108 KB | Output is correct |
14 | Correct | 1 ms | 1236 KB | Output is correct |
15 | Correct | 1 ms | 1236 KB | Output is correct |
16 | Correct | 1 ms | 1236 KB | Output is correct |
17 | Correct | 1 ms | 1228 KB | Output is correct |
18 | Correct | 1 ms | 1108 KB | Output is correct |
19 | Correct | 1 ms | 1232 KB | Output is correct |
20 | Correct | 2 ms | 1228 KB | Output is correct |
21 | Correct | 3 ms | 4564 KB | Output is correct |
22 | Correct | 4 ms | 5076 KB | Output is correct |
23 | Correct | 4 ms | 5580 KB | Output is correct |
24 | Correct | 19 ms | 23092 KB | Output is correct |
25 | Correct | 19 ms | 23004 KB | Output is correct |
26 | Correct | 20 ms | 22952 KB | Output is correct |
27 | Correct | 20 ms | 22780 KB | Output is correct |
28 | Correct | 12 ms | 15060 KB | Output is correct |