2766 | 2023-01-23 09:20:17 | Catt | Csoportokba osztás | cpp17 | Hibás válasz 0/100 | 150ms | 6276 KiB |
#include <bits/stdc++.h>
using namespace std;
#define InTheNameOfGod ios::sync_with_stdio(0);cin.tie(0); cout.tie(0);
using ll = long long;
const int maxN = 2e5 + 5;
const int INF = 1e9 + 7;
int main() {
int t = 1;
//cin >> t;
while(t--)
{
int n, k;
cin >> n >> k;
vector<int> prefSum(n+1, 0);
vector<int> v(n);
for(int i = 0; i < n; i++) {
cin >> v[i];
prefSum[i+1] = prefSum[i] + v[i];
}
set<int> leaders;
leaders.insert(n-1);
for(int j = 0; j < k-1; j++) {
int last = 0;
int maxi = -INF, ind = -1;
auto it = leaders.begin();
//cout << j << ": \n";
for(int i = 0; i < n-1; i++) {
//cout << i << ": " << last << ", " << (*it) << endl;
if(leaders.find(i) != leaders.end()) {
last = i+1;
it++;
continue;
}
if((prefSum[i+1] - prefSum[last]) * (abs(v[i]) - v[(*it)]) > maxi) {
maxi = (prefSum[i+1] - prefSum[last]) * (abs(v[i]) - v[(*it)]);
ind = i;
}
/*cout << "val: " << (prefSum[i+1] - prefSum[last]) * (abs(v[i]) - v[(*it)]) << endl;
cout << "maxi: " << maxi << ", " << ind << endl;*/
}
//cout << "-------\n";
leaders.insert(ind);
}
int mo = 0, last = 0;
for(int sz : leaders) {
mo += (prefSum[sz+1] - prefSum[last]) * abs(v[sz]);
last = sz + 1;
}
cout << mo;
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1816 KiB | ||||
2 | Elfogadva | 2ms | 2056 KiB | ||||
subtask2 | 0/5 | ||||||
3 | Hibás válasz | 35ms | 3652 KiB | ||||
4 | Hibás válasz | 35ms | 3720 KiB | ||||
5 | Hibás válasz | 37ms | 3848 KiB | ||||
subtask3 | 0/22 | ||||||
6 | Hibás válasz | 4ms | 2712 KiB | ||||
7 | Hibás válasz | 4ms | 2920 KiB | ||||
8 | Hibás válasz | 4ms | 3264 KiB | ||||
9 | Hibás válasz | 4ms | 3132 KiB | ||||
10 | Hibás válasz | 4ms | 3204 KiB | ||||
11 | Hibás válasz | 4ms | 3372 KiB | ||||
subtask4 | 0/34 | ||||||
12 | Hibás válasz | 2ms | 3528 KiB | ||||
13 | Hibás válasz | 2ms | 3672 KiB | ||||
14 | Hibás válasz | 2ms | 3784 KiB | ||||
15 | Hibás válasz | 144ms | 5268 KiB | ||||
16 | Hibás válasz | 143ms | 5432 KiB | ||||
17 | Hibás válasz | 143ms | 5592 KiB | ||||
18 | Hibás válasz | 2ms | 4336 KiB | ||||
19 | Hibás válasz | 2ms | 4444 KiB | ||||
20 | Hibás válasz | 3ms | 4456 KiB | ||||
21 | Hibás válasz | 144ms | 5788 KiB | ||||
22 | Hibás válasz | 145ms | 5788 KiB | ||||
23 | Hibás válasz | 143ms | 5872 KiB | ||||
subtask5 | 0/29 | ||||||
24 | Hibás válasz | 145ms | 5784 KiB | ||||
25 | Hibás válasz | 143ms | 5788 KiB | ||||
26 | Hibás válasz | 143ms | 5868 KiB | ||||
27 | Hibás válasz | 144ms | 5788 KiB | ||||
28 | Hibás válasz | 142ms | 5864 KiB | ||||
29 | Hibás válasz | 143ms | 5952 KiB | ||||
30 | Hibás válasz | 144ms | 5952 KiB | ||||
31 | Hibás válasz | 142ms | 5952 KiB | ||||
32 | Hibás válasz | 143ms | 5948 KiB | ||||
subtask6 | 0/10 | ||||||
33 | Hibás válasz | 143ms | 6084 KiB | ||||
34 | Hibás válasz | 150ms | 6156 KiB | ||||
35 | Hibás válasz | 145ms | 6068 KiB | ||||
36 | Hibás válasz | 145ms | 6276 KiB | ||||
37 | Hibás válasz | 145ms | 6268 KiB | ||||
38 | Hibás válasz | 146ms | 6276 KiB |