Cod sursa(job #556988)

Utilizator michael9ufoStanescu Mihai michael9ufo Data 16 martie 2011 13:36:55
Problema Datorii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<fstream>

ifstream f("datorii.in");
ofstream g("datorii.out");

int main()
{
	unsigned int i,j,n,m,mat_a[15000],mat_o[100000][3],s;	
	f>>n;	f>>m;
	
	for(i=1;i<=n;i++)
		f>>mat_a[i];

	for(i=1;i<=m;i++)
	{
		for(j=1;j<=3;j++)
		{
			f>>mat_o[i][j];
			
			if(j==3)
			{
				if(mat_o[i][1] == 1)
				{
					if((mat_o[i][2] >= 1) && (mat_o[i][2] <= mat_o[i][3]) && (mat_o[i][3] <= n))
					{
						s = 0;
						
						for(j=mat_o[i][2];j<=mat_o[i][3];j++)
						{
							s += mat_a[j];			
						}
						
						g<<s<<"\n";
					}
				}
				else if(mat_o[i][1] == 0)
				{
					if((mat_o[i][2] >= 1) && (mat_o[i][2] <= n) && (mat_o[i][3] >= 1) && (mat_o[i][3] <= 1000))
					{
						mat_a[mat_o[i][2]] -= mat_o[i][3];	
					}
				}
			}
		}
	}		

	return 0;
}