Pagini recente » Cod sursa (job #2872455) | Cod sursa (job #2455230) | Cod sursa (job #2402906) | Cod sursa (job #3184532) | Cod sursa (job #3201956)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sequencequery.in");
ofstream fout("sequencequery.out");
int v[100005];
int kadane(int n, int m)
{
int sumamaxima,sumacurenta;
sumamaxima = v[n], sumacurenta = v[n];
for (int i=n+1;i<=m;i++)
{
if (sumacurenta<0)
{
sumacurenta = v[i];
}
else sumacurenta = sumacurenta + v[i];
if (sumacurenta > sumamaxima)
{
sumamaxima = sumacurenta;
}
}
return sumamaxima;
}
int main()
{
int n,m;
fin>>n>>m;
for(int i=1;i<=n;i++) fin>>v[i];
int x,y;
for(int i=1;i<=m;i++)
{
fin>>x>>y;
fout<<kadane(x,y)<<'\n';
}
}