Pagini recente » Cod sursa (job #2190379) | Cod sursa (job #1323536) | Cod sursa (job #491065) | Cod sursa (job #531593) | Cod sursa (job #1875347)
/*
#include <algorithm>
#include <iostream>
#include <fstream>
using namespace std;
#define NMAX 100000
int poz[NMAX];
int main() {
ifstream cin("secvrest.in");
ofstream cout("secvrest.out");
int n;
cin >> n;
int sum = 0;
for (int i = 1; i <= n; ++i){
int x;
cin >> x;
sum = (sum + x) % n;
if (poz[sum]){
cout << poz[sum] + 1 << ' ' << i << '\n';
break;
}
else{
poz[sum] = i;
}
}
return 0;
}
*/
#include <iostream>
#include <fstream>
#define INF ((1 << 31) - 1)
using namespace std;
int main()
{
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int n;
cin >> n;
int max_sum = -INF;
int max_start_pos = -1;
int max_end_pos = -1;
int start_pos = 1;
int sum = 0;
for (int i = 1; i <= n; ++i){
int x;
cin >> x;
sum += x;
if (sum < 0){
sum = 0;
start_pos = i + 1;
}
if (sum > max_sum){
max_sum = sum;
max_start_pos = start_pos;
max_end_pos = i;
}
}
cout << max_sum << ' ' << max_start_pos << ' ' << max_end_pos << '\n';
return 0;
}