Cod sursa(job #141312)

Utilizator eddieOlariu Eduard Iuliu eddie Data 22 februarie 2008 23:06:32
Problema Datorii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<stdio.h>
long int a[151][100],t[151],m,n,i,j,k,cod,v,tp,i1,i2,j1,j2,k1,k2,p,u,s;
int main()
{
	FILE *f,*g;
	f=fopen("datorii.in","r");
	fscanf(f,"%ld%ld",&n,&m);
	for(k=1;k<=n;k++)
	{ i=k/100;j=k%100;
	fscanf(f,"%ld",&a[i][j]);
	t[i]+=a[i][j];
	}
	u=n/100+1;
	g=fopen("datorii.out","w");
	for(k=1;k<=m;k++)
	{ fscanf(f,"%ld",&cod);
	if(cod==0)
	{ fscanf(f,"%ld%ld",&tp,&v);
		i=tp/100;
		j=tp%100;
		a[i][j]-=v;
		t[i]-=v;
	}
	else
	{fscanf(f,"%ld%ld",&k1,&k2);
	i1=k1/100;j1=k1%100;
	i2=k2/100;j2=k2%100;
	s=0;
	for(p=i1;p<=i2;p++)
	s+=t[p];
	for(p=0;p<j1;p++)
	s-=a[i1][p];
	for(p=99;p>j2;p--)
	s-=a[i2][p];
	fprintf(g,"%ld\n",s);
	}
	}
	fcloseall();
	fprintf(g,"\n");
	return 0;
}