Cod sursa(job #420966)

Utilizator drywaterLazar Vlad drywater Data 20 martie 2010 20:48:05
Problema Datorii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <stdio.h>
long long s[15001][3],i,p,q,t,n,m,j,nr=1,v[100001][3],k;
FILE *f=fopen("datorii.in","r"),*g=fopen("datorii.out","w");
int main(void)
{
	fscanf(f,"%lld%lld",&n,&m);
	for (i=1;i<=n;i++)
	{
		fscanf(f,"%lld",&p);
		s[i][1]=s[i-1][1]+p;
	}
	for (i=1;i<=m;i++)
	{
		fscanf(f,"%lld%lld%lld",&t,&p,&q);
		if (t==1)
		{
			k=s[q][1]-s[p-1][1];
			for (j=p;j<=q;j++)
				k=k-s[j][2];
			for (j=1;j<p;j++)
				k=k+s[j][2];
			fprintf(g,"%lld\n",k);
		}
		else
		{
			s[p][2]+=q;
		}
	}
	fclose(g);
	return 0;
}