Submission #966852

#TimeUsernameProblemLanguageResultExecution timeMemory
966852jadai007Feast (NOI19_feast)C++14
18 / 100
1062 ms5212 KiB
#include<bits/stdc++.h> #define int long long using namespace std; int n,k, arr[300300], l, r, vis[300300], mx = -1e18, sum, now, ans; signed main(){ cin.tie(nullptr)->sync_with_stdio(false); cin >> n >> k; for(int i = 1; i<=n; ++i) cin >> arr[i]; for(int i = 1; i<=k; ++i){ mx = -1e18; int cnt = 0, now = 0, sum = 0; for(int j = 1; j<=n; ++j){ if(vis[j]){ sum = 0; continue; } sum+=arr[j]; cnt++; if(mx < sum){ mx = sum; now = cnt; r = j; } if(sum < 0){ sum = 0; cnt = 0; } } if(mx > 0) for(int j = r - now + 1; j<=r; ++j) vis[j] = 1; ans+=max(0ll, mx); } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...