Submission #44860

# Submission time Handle Problem Language Result Execution time Memory
44860 2018-04-08T09:49:55 Z bogdan10bos Calvinball championship (CEOI15_teams) C++14
40 / 100
223 ms 720 KB
#include <bits/stdc++.h>

using namespace std;

//#define FILE_IO

const int mod = 1e6 + 7;

int N;
int v[10005];
int mxx[10005];
int dp[10005];

int main()
{
    #ifdef FILE_IO
    freopen("1.in", "r", stdin);
    freopen("1.out", "w", stdout);
    #endif

    scanf("%d", &N);
    for(int i = 1; i <= N; i++)
    {
        scanf("%d", &v[i]);
        mxx[i] = max(mxx[i - 1], v[i]);
    }

    for(int i = 1; i <= N; i++) dp[i] = 1;

    int ans = 1;
    for(int i = N; i >= 1; i--)
    {
        (ans += (1LL * (v[i] - 1) * dp[ mxx[i - 1] ]) % mod) %= mod;
        for(int j = 1; j <= N && j <= mxx[i]; j++)
            dp[j] = ((1LL * dp[j] * j) % mod + dp[j + 1]) % mod;
    }

    printf("%d\n", ans);

    return 0;
}

Compilation message

teams.cpp: In function 'int main()':
teams.cpp:21:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &N);
     ~~~~~^~~~~~~~~~
teams.cpp:24:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &v[i]);
         ~~~~~^~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 608 KB Output is correct
4 Correct 2 ms 708 KB Output is correct
5 Correct 2 ms 708 KB Output is correct
6 Correct 2 ms 708 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 708 KB Output is correct
2 Correct 2 ms 708 KB Output is correct
3 Correct 2 ms 708 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 708 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 708 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 708 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 708 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 708 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 223 ms 720 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 720 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 720 KB Output isn't correct
2 Halted 0 ms 0 KB -