# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1121778 | coolboy19521 | Calvinball championship (CEOI15_teams) | C++17 | 36 ms | 592 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include"bits/stdc++.h"
using namespace std;
using ll = long long;
const int md = 1000000007;
const int mxN = 101;
ll dp[mxN][mxN];
int a[mxN];
main() {
int N;
cin >> N;
for (int i = 1; i <= N; i ++) {
cin >> a[i];
}
ll ans = 0;
int mx = 0;
for (int i = 1; i <= N; i ++) {
mx = max(mx, a[i - 1]);
for (int j = a[i] - 1; 1 <= j; j --) {
memset(dp, 0, sizeof(dp));
dp[i][max(mx, j)] = 1;
for (int k = i + 1; k <= N; k ++) {
for (int l = 1; l <= k; l ++) {
dp[k][l] = (dp[k - 1][l] * l % md + dp[k - 1][l - 1]) % md;
}
}
ll sm = 0;
for (int k = 1; k <= N; k ++) {
sm = (sm + dp[N][k]) % md;
}
ans = (ans + sm) % md;
}
}
cout << (ans + 1) % md << endl;
}
Compilation message (stderr)
# | 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... |
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |