// https://static.oj.uz/problem/16d3e3748d52997353f58d61d6e89b4/statement/41e54ac7d5af210510f0e15513412d0b31cf8ee951506602d2b538eca57ecab0/statement_en.pdf
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
int n , k;
cin>>n>>k;
vector<int> a(n);
for(int i = 0 ; i < n ; i++)cin>>a[i];
int left = 0 , right = 0;
int idx = n ;
for(int i = 0 ; i < n; i++){
if(a[i] < 0) {
idx = i;
break;
}
left+=a[i];
}
for(int i = idx + 1; i < n ;i++){
right += a[i];
}
if(k > 1){
cout<< left + right;
}
else{
int sum = accumulate(a.begin() , a.end() , 0LL);
cout<<max({left , right , sum});
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |