Submission #998414
Source Code Expand
#include <string> #include <vector> #include <cstdio> #include <cstdlib> #include <cmath> #include <algorithm> #include <queue> #include <map> #include <set> #include <iostream> #include <sstream> #include <cstring> #include <numeric> using namespace std; typedef long long ll; typedef pair<int,int> pii; #define F0(i,n) for (int i = 0; i < n; i++) #define F1(i,n) for (int i = 1; i <= n; i++) #define CL(a,x) memset(x, a, sizeof(x)); #define SZ(x) ((int)x.size()) const double eps = 1e-10; const int inf = 1000000009; int i, j, k, m, n, l; int insd; const int N = 100001; ll a[N], dp[2][N]; ll s1[N], smax[N], c1; ll s2[N], s2max, c2; void reset() { c1 = c2 = s2max = 0; } void push(ll x) { s2[c2++] = x; if (x > s2max) s2max = x; while (c1 + c2 > m) { if (c1) c1--; else { for (int i = c2 - 1; i >= 0; i--) { smax[c1] = s1[c1] = s2[i]; if (c1 > 0 && smax[c1 - 1] > smax[c1]) smax[c1] = smax[c1 - 1]; c1++; } c2 = 0; s2max = 0; } } } ll get_max() { if (c1 == 0) return s2max; return max(s2max, smax[c1 - 1]); } int main() { //freopen("x.in", "r", stdin); cin >> n >> m >> k; F1(i, n) cin >> a[i]; F1(i, n) dp[0][i] = a[i]; for (int kk = 2; kk <= k; kk++) { reset(); int i1 = kk % 2; int i2 = 1 - i1; insd = kk - 1; for (int i = kk; i <= n; i++) { while (insd < i) { push(dp[i1][insd]); insd++; } dp[i2][i] = kk * a[i] + get_max(); } if (kk == k) { ll ans = 0; for (int i = k; i <= n; i++) { ans = max(ans, dp[i2][i]); } cout << ans << endl; } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - Struck Out |
User | USA |
Language | C++14 (GCC 5.4.1) |
Score | 700 |
Code Size | 1651 Byte |
Status | AC |
Exec Time | 430 ms |
Memory | 4864 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, 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 | 3 ms | 256 KB |
sample_2.txt | AC | 3 ms | 256 KB |
sample_3.txt | AC | 3 ms | 256 KB |
subtask_1_1.txt | AC | 3 ms | 256 KB |
subtask_1_2.txt | AC | 28 ms | 512 KB |
subtask_1_3.txt | AC | 265 ms | 3328 KB |
subtask_1_4.txt | AC | 7 ms | 384 KB |
subtask_1_5.txt | AC | 72 ms | 3328 KB |
subtask_1_6.txt | AC | 3 ms | 256 KB |
subtask_1_7.txt | AC | 134 ms | 3328 KB |
subtask_1_8.txt | AC | 277 ms | 3328 KB |
subtask_1_9.txt | AC | 4 ms | 256 KB |
subtask_2_1.txt | AC | 3 ms | 256 KB |
subtask_2_2.txt | AC | 3 ms | 256 KB |
subtask_2_3.txt | AC | 3 ms | 256 KB |
subtask_2_4.txt | AC | 3 ms | 256 KB |
subtask_2_5.txt | AC | 3 ms | 256 KB |
subtask_2_6.txt | AC | 3 ms | 256 KB |
subtask_2_7.txt | AC | 3 ms | 256 KB |
subtask_2_8.txt | AC | 3 ms | 256 KB |
subtask_2_9.txt | AC | 3 ms | 256 KB |
subtask_3_1.txt | AC | 93 ms | 4096 KB |
subtask_3_2.txt | AC | 85 ms | 2688 KB |
subtask_3_3.txt | AC | 94 ms | 2688 KB |
subtask_3_4.txt | AC | 77 ms | 2176 KB |
subtask_3_5.txt | AC | 7 ms | 512 KB |
subtask_3_6.txt | AC | 83 ms | 2560 KB |
subtask_3_7.txt | AC | 94 ms | 4736 KB |
subtask_3_8.txt | AC | 12 ms | 512 KB |
subtask_3_9.txt | AC | 94 ms | 2560 KB |
subtask_4_1.txt | AC | 325 ms | 3200 KB |
subtask_4_10.txt | AC | 403 ms | 2560 KB |
subtask_4_11.txt | AC | 430 ms | 2560 KB |
subtask_4_12.txt | AC | 399 ms | 2560 KB |
subtask_4_13.txt | AC | 369 ms | 2560 KB |
subtask_4_2.txt | AC | 345 ms | 2560 KB |
subtask_4_3.txt | AC | 318 ms | 4736 KB |
subtask_4_4.txt | AC | 332 ms | 3200 KB |
subtask_4_5.txt | AC | 285 ms | 2688 KB |
subtask_4_6.txt | AC | 91 ms | 4864 KB |
subtask_4_7.txt | AC | 204 ms | 2560 KB |
subtask_4_8.txt | AC | 309 ms | 3200 KB |
subtask_4_9.txt | AC | 186 ms | 2688 KB |