Submission #859627

# Submission time Handle Problem Language Result Execution time Memory
859627 2023-10-10T11:43:38 Z Tudy006 Peru (RMI20_peru) C++14
18 / 100
600 ms 13020 KB
#include <bits/stdc++.h>
#include "peru.h"

using namespace std;

const int NMAX = 2500000;
const int MOD = 1e9 + 7;

long long dp[NMAX];

int solve( int n, int k, int* v ) {
    deque <int> dq;

    int ans = 0;
    for ( int i = 0; i < n; i ++ ) {
        dp[i] = v[i] + ( i > 0 ? dp[i - 1] : 0 );
        for ( int j = i, maxSuf = 0; j >= max( 0, i - k + 1 ); j -- ) {
            maxSuf = max( maxSuf, v[j] );
            dp[i] = min( dp[i], maxSuf + ( j == 0 ? 0 : dp[j - 1] ) );
        }
//        while ( !dq.empty() && v[dq.back()] <= v[i] ) dq.pop_back();
//        dq.push_back( i );
//        dp[i] = v[dq.front()] + ( i >= k ? dp[i - k] : 0 );
//        for ( int j = 1; j < (int)dq.size(); j ++ ) {
//            dp[i] = min( dp[i], dp[dq[j - 1]] + v[dq[j]] );
//        }
        ans = ( (long long)ans * 23 + dp[i] ) % MOD;
    }
    dq.clear();
    return ans;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2392 KB Output is correct
2 Correct 1 ms 2396 KB Output is correct
3 Correct 1 ms 2396 KB Output is correct
4 Correct 1 ms 2396 KB Output is correct
5 Correct 1 ms 2396 KB Output is correct
6 Correct 1 ms 2392 KB Output is correct
7 Correct 1 ms 2396 KB Output is correct
8 Correct 1 ms 2396 KB Output is correct
9 Correct 1 ms 2396 KB Output is correct
10 Correct 1 ms 2652 KB Output is correct
11 Correct 1 ms 2396 KB Output is correct
12 Correct 1 ms 2512 KB Output is correct
13 Correct 1 ms 2392 KB Output is correct
14 Correct 1 ms 2392 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2392 KB Output is correct
2 Correct 1 ms 2396 KB Output is correct
3 Correct 1 ms 2396 KB Output is correct
4 Correct 1 ms 2396 KB Output is correct
5 Correct 1 ms 2396 KB Output is correct
6 Correct 1 ms 2392 KB Output is correct
7 Correct 1 ms 2396 KB Output is correct
8 Correct 1 ms 2396 KB Output is correct
9 Correct 1 ms 2396 KB Output is correct
10 Correct 1 ms 2652 KB Output is correct
11 Correct 1 ms 2396 KB Output is correct
12 Correct 1 ms 2512 KB Output is correct
13 Correct 1 ms 2392 KB Output is correct
14 Correct 1 ms 2392 KB Output is correct
15 Correct 583 ms 12976 KB Output is correct
16 Correct 482 ms 13008 KB Output is correct
17 Correct 277 ms 13012 KB Output is correct
18 Correct 308 ms 13020 KB Output is correct
19 Correct 388 ms 13012 KB Output is correct
20 Execution timed out 775 ms 13008 KB Time limit exceeded
21 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 583 ms 12976 KB Output is correct
2 Correct 482 ms 13008 KB Output is correct
3 Correct 277 ms 13012 KB Output is correct
4 Correct 308 ms 13020 KB Output is correct
5 Correct 388 ms 13012 KB Output is correct
6 Execution timed out 775 ms 13008 KB Time limit exceeded
7 Halted 0 ms 0 KB -