Submission #2013097
Source Code Expand
#include <cstdio> #include <iostream> #include <algorithm> #include <string> #include <cstring> #include <vector> #include <queue> #include <set> #include <map> #include <cmath> #include <iomanip> #include <cassert> #include <bitset> #include <deque> using namespace std; #define rep(i, n) for (int i=0; i<(n); i++) #define all(c) (c).begin(), (c).end() #define uniq(c) c.erase(unique(all(c)), (c).end()) #define index(xs, x) (int)(lower_bound(all(xs), x) - xs.begin()) #define _1 first #define _2 second #define pb push_back #define INF (1LL<<60) #define MOD 1000000007 typedef pair<long long, long long> P; struct SlideMin { long long *src; int right; deque<P> deq; SlideMin() : src(NULL), right(0) {} SlideMin(long long *src) : src(src), right(0) {} void add(int x, long long y) { while (!deq.empty() && deq.back()._2 >= y) deq.pop_back(); deq.push_back(P(x, y)); } long long query(int l, int r) { while (right <= r) { add(right, src[right]); right++; } while (!deq.empty() && deq.front()._1 < l) deq.pop_front(); if (deq.empty()) return INF; return deq.front()._2; } }; int N, M, K; int A[100000]; long long dp[301][100000]; SlideMin smin[301]; signed main() { ios::sync_with_stdio(false); cin.tie(0); cin >> N >> M >> K; rep(i, N) cin >> A[i]; rep(k, K+1) rep(i, N) dp[k][i] = INF; rep(i, N) dp[0][i] = 0; rep(k, K+1) smin[k] = SlideMin(dp[k]); dp[1][0] = -A[0]; rep(k, K) rep(i, N) { dp[k+1][i] = min(dp[k+1][i], -(-smin[k].query(i-M, i-1) + 1LL*(k+1)*A[i])); } long long m = 0; rep(i, N) m = max(m, -dp[K][i]); cout << m << "\n"; return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - Struck Out |
User | funcsr |
Language | C++14 (GCC 5.4.1) |
Score | 700 |
Code Size | 1710 Byte |
Status | AC |
Exec Time | 550 ms |
Memory | 236032 KB |
Judge Result
Set Name | Sample | subtask1 | subtask2 | subtask3 | All | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | 200 / 200 | 300 / 300 | 100 / 100 | ||||||||||
Status |
|
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_1.txt, sample_2.txt, sample_3.txt |
subtask1 | sample_2.txt, subtask_1_1.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
subtask2 | sample_1.txt, sample_2.txt, sample_3.txt, subtask_2_1.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt |
subtask3 | sample_1.txt, sample_2.txt, sample_3.txt, subtask_2_1.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt, subtask_3_1.txt, subtask_3_2.txt, subtask_3_3.txt, subtask_3_4.txt, subtask_3_5.txt, subtask_3_6.txt, subtask_3_7.txt, subtask_3_8.txt, subtask_3_9.txt |
All | sample_1.txt, sample_2.txt, sample_3.txt, sample_1.txt, sample_2.txt, sample_3.txt, subtask_1_1.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt, subtask_2_1.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt, subtask_3_1.txt, subtask_3_2.txt, subtask_3_3.txt, subtask_3_4.txt, subtask_3_5.txt, subtask_3_6.txt, subtask_3_7.txt, subtask_3_8.txt, subtask_3_9.txt, subtask_4_1.txt, subtask_4_10.txt, subtask_4_11.txt, subtask_4_12.txt, subtask_4_13.txt, subtask_4_2.txt, subtask_4_3.txt, subtask_4_4.txt, subtask_4_5.txt, subtask_4_6.txt, subtask_4_7.txt, subtask_4_8.txt, subtask_4_9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_1.txt | AC | 2 ms | 4608 KB |
sample_2.txt | AC | 2 ms | 2560 KB |
sample_3.txt | AC | 2 ms | 4608 KB |
subtask_1_1.txt | AC | 7 ms | 27136 KB |
subtask_1_2.txt | AC | 89 ms | 234240 KB |
subtask_1_3.txt | AC | 493 ms | 236032 KB |
subtask_1_4.txt | AC | 9 ms | 27264 KB |
subtask_1_5.txt | AC | 20 ms | 8704 KB |
subtask_1_6.txt | AC | 32 ms | 158208 KB |
subtask_1_7.txt | AC | 172 ms | 82432 KB |
subtask_1_8.txt | AC | 493 ms | 236032 KB |
subtask_1_9.txt | AC | 48 ms | 233984 KB |
subtask_2_1.txt | AC | 6 ms | 25088 KB |
subtask_2_2.txt | AC | 3 ms | 10752 KB |
subtask_2_3.txt | AC | 5 ms | 16896 KB |
subtask_2_4.txt | AC | 6 ms | 25088 KB |
subtask_2_5.txt | AC | 6 ms | 25088 KB |
subtask_2_6.txt | AC | 6 ms | 25088 KB |
subtask_2_7.txt | AC | 6 ms | 25088 KB |
subtask_2_8.txt | AC | 6 ms | 25088 KB |
subtask_2_9.txt | AC | 5 ms | 18944 KB |
subtask_3_1.txt | AC | 60 ms | 27136 KB |
subtask_3_2.txt | AC | 62 ms | 27136 KB |
subtask_3_3.txt | AC | 59 ms | 27136 KB |
subtask_3_4.txt | AC | 50 ms | 26752 KB |
subtask_3_5.txt | AC | 9 ms | 25216 KB |
subtask_3_6.txt | AC | 38 ms | 16896 KB |
subtask_3_7.txt | AC | 61 ms | 27136 KB |
subtask_3_8.txt | AC | 11 ms | 25344 KB |
subtask_3_9.txt | AC | 65 ms | 27136 KB |
subtask_4_1.txt | AC | 493 ms | 236032 KB |
subtask_4_10.txt | AC | 448 ms | 236032 KB |
subtask_4_11.txt | AC | 550 ms | 236032 KB |
subtask_4_12.txt | AC | 550 ms | 236032 KB |
subtask_4_13.txt | AC | 546 ms | 236032 KB |
subtask_4_2.txt | AC | 537 ms | 236032 KB |
subtask_4_3.txt | AC | 493 ms | 236032 KB |
subtask_4_4.txt | AC | 493 ms | 236032 KB |
subtask_4_5.txt | AC | 422 ms | 203264 KB |
subtask_4_6.txt | AC | 49 ms | 23040 KB |
subtask_4_7.txt | AC | 288 ms | 127488 KB |
subtask_4_8.txt | AC | 488 ms | 236032 KB |
subtask_4_9.txt | AC | 236 ms | 107008 KB |