Pagini recente » Monitorul de evaluare | Cod sursa (job #2786694) | Cod sursa (job #3173582) | Cod sursa (job #1403659) | Cod sursa (job #446267)
Cod sursa(job #446267)
#include<stdio.h>
#define inf -100001
int main()
{
int n,m,v[100000],i,a,b,j;
long long int sum,max;
FILE *f=fopen("sequencequery.in","r");
FILE *g=fopen("sequencequery.out","w");
fscanf(f,"%i %i",&n,&m);
for(i=0;i<n;i++)
fscanf(f,"%i",v+i);
for(i=0;i<m;i++)
{
fscanf(f,"%i %i",&a,&b);
max=inf;
sum=0;
for(j=a-1;j<b;j++)
{
if(sum>=0)
sum+=v[j];
else
sum=v[j];
if(sum>max)
max=sum;
}
fprintf(g,"%lli\n",max);
}
fclose(f);
fclose(g);
return 0;
}