Pagini recente » Monitorul de evaluare | Cod sursa (job #2302747) | Cod sursa (job #2730072) | Cod sursa (job #1249901) | Cod sursa (job #2323975)
#include <cstdio>
using namespace std;
int main()
{
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
int n;
scanf("%d", &n);
long long sum = 0;
long long maxx = (-1) << 30;
int pozSt = 1;
int pozFs = 1;
int pozStMax = 1;
int pozFsMax = 1;
for(int i = 1; i <= n; ++i)
{
int a;
scanf("%d", &a);
sum += a;
if(sum < 0)
{
if(sum > maxx)
{
maxx = sum;
pozStMax = pozSt;
pozFsMax = i;
}
sum = 0;
pozSt = i + 1;
}
else
if(sum > maxx)
{
maxx = sum;
pozStMax = pozSt;
pozFsMax = i;
}
}
printf("%lld %d %d\n", maxx, pozStMax, pozFsMax);
return 0;
}