답안 #657465

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
657465 2022-11-09T22:58:41 Z GusterGoose27 캥거루 (CEOI16_kangaroo) C++11
100 / 100
9 ms 12244 KB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

const int MOD = 1e9+7;
const int MAXN = 2001;
int dp[MAXN][MAXN];

int n, a, b;

int main() {
	ios_base::sync_with_stdio(false); cin.tie(NULL);
	cin >> n >> a >> b;
	a--; b--;
	dp[0][0] = 1;
	for (int i = 0; i < n; i++) {
		for (int j = 1; j <= min(i+1, n-i); j++) {
			if (i == a || i == b) {
				dp[i+1][j] = dp[i][j]+dp[i][j-1];
				dp[i+1][j] %= MOD;
			}
			else {
				dp[i+1][j] = ((ll) (j-(i >= a)-(i >= b))*dp[i][j-1]+(ll)j*dp[i][j+1]) % MOD;
			}
		}
	}
	cout << dp[n][1] << "\n";
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 592 KB Output is correct
5 Correct 1 ms 468 KB Output is correct
6 Correct 1 ms 468 KB Output is correct
7 Correct 1 ms 468 KB Output is correct
8 Correct 1 ms 468 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 452 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 592 KB Output is correct
5 Correct 1 ms 468 KB Output is correct
6 Correct 1 ms 468 KB Output is correct
7 Correct 1 ms 468 KB Output is correct
8 Correct 1 ms 468 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 452 KB Output is correct
12 Correct 1 ms 1108 KB Output is correct
13 Correct 1 ms 1108 KB Output is correct
14 Correct 1 ms 1108 KB Output is correct
15 Correct 1 ms 1108 KB Output is correct
16 Correct 1 ms 1108 KB Output is correct
17 Correct 1 ms 1108 KB Output is correct
18 Correct 1 ms 980 KB Output is correct
19 Correct 1 ms 1108 KB Output is correct
20 Correct 1 ms 1092 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 592 KB Output is correct
5 Correct 1 ms 468 KB Output is correct
6 Correct 1 ms 468 KB Output is correct
7 Correct 1 ms 468 KB Output is correct
8 Correct 1 ms 468 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 452 KB Output is correct
12 Correct 1 ms 1108 KB Output is correct
13 Correct 1 ms 1108 KB Output is correct
14 Correct 1 ms 1108 KB Output is correct
15 Correct 1 ms 1108 KB Output is correct
16 Correct 1 ms 1108 KB Output is correct
17 Correct 1 ms 1108 KB Output is correct
18 Correct 1 ms 980 KB Output is correct
19 Correct 1 ms 1108 KB Output is correct
20 Correct 1 ms 1092 KB Output is correct
21 Correct 2 ms 3268 KB Output is correct
22 Correct 2 ms 3516 KB Output is correct
23 Correct 2 ms 3916 KB Output is correct
24 Correct 9 ms 12244 KB Output is correct
25 Correct 8 ms 12228 KB Output is correct
26 Correct 8 ms 12244 KB Output is correct
27 Correct 8 ms 12096 KB Output is correct
28 Correct 7 ms 8532 KB Output is correct