# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
81795 | 2018-10-26T16:30:07 Z | Just_Solve_The_Problem | Calvinball championship (CEOI15_teams) | C++11 | 1000 ms | 928 KB |
#include <bits/stdc++.h> using namespace std; const int N = (int)1e4 + 7; int mod = (int)1e6 + 7; int a[N]; int dp[2][N]; int add(int a, int b) { return (a + b) % mod; } int mult(long long a, long long b) { return (a * b) % mod; } int n, mx; int asd[N]; main() { scanf("%d", &n); for (int i = 1; i <= n; i++) { scanf("%d", &a[i]); asd[i] = asd[i - 1]; if (a[i] > mx) { mx = a[i]; asd[i]++; } } int ans = 1; for (int i = 1; i <= n; i++) dp[n & 1][i] = 1; ans = add(ans, mult(dp[n & 1][asd[n - 1]], a[n] - 1)); for (int i = n - 1; i >= 1; i--) { for (int j = 0; j <= i; j++) { dp[i & 1][j] = 0; dp[i & 1][j] = add(dp[i & 1][j], dp[i & 1 ^ 1][j + 1]); dp[i & 1][j] = add(dp[i & 1][j], mult(dp[i & 1 ^ 1][j], j)); } ans = add(ans, mult(dp[i & 1][asd[i - 1]], a[i] - 1)); } cout << ans; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 256 KB | Output is correct |
2 | Correct | 2 ms | 500 KB | Output is correct |
3 | Correct | 2 ms | 500 KB | Output is correct |
4 | Correct | 2 ms | 500 KB | Output is correct |
5 | Correct | 2 ms | 504 KB | Output is correct |
6 | Correct | 2 ms | 544 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 620 KB | Output is correct |
2 | Correct | 2 ms | 620 KB | Output is correct |
3 | Correct | 2 ms | 620 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 620 KB | Output is correct |
2 | Correct | 2 ms | 620 KB | Output is correct |
3 | Correct | 2 ms | 624 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 632 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 632 KB | Output is correct |
2 | Correct | 2 ms | 632 KB | Output is correct |
3 | Correct | 2 ms | 648 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 652 KB | Output is correct |
2 | Correct | 5 ms | 652 KB | Output is correct |
3 | Correct | 4 ms | 656 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 12 ms | 660 KB | Output is correct |
2 | Correct | 13 ms | 788 KB | Output is correct |
3 | Correct | 12 ms | 788 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1044 ms | 928 KB | Time limit exceeded |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 350 ms | 928 KB | Output is correct |
2 | Correct | 269 ms | 928 KB | Output is correct |
3 | Correct | 265 ms | 928 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1069 ms | 928 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |