Pagini recente » Cod sursa (job #1399461) | Cod sursa (job #1399169) | Cod sursa (job #1846301) | Cod sursa (job #1018555) | Cod sursa (job #2038164)
#include <cstdio>
#include <deque>
#define N 50005
#define abs(x) x>0 ? x: -x
using namespace std;
int s[N], a[N], n, k;
deque <int> mini, maxi;
int main()
{
freopen("secv2.in", "r", stdin);
freopen("secv2.out", "w", stdout);
scanf("%d %d\n", &n, &k);
for(int i=1;i<=n;i++)
{
scanf("%d ", &a[i]);
s[i]=s[i-1]+a[i];
}
for(int i=1;i<=n;i++)
{
while(!mini.empty() && s[mini.back()]>s[i])
mini.pop_back();
mini.push_back(i);
while(!maxi.empty() && s[maxi.back()]<s[i])
maxi.pop_back();
maxi.push_back(i);
}
int pozmin=mini.front();
int pozmax=maxi.front();
printf("%d %d %d", pozmin+1, pozmax, s[pozmax]-s[pozmin]);
return 0;
}