Cod sursa(job #1194578)

Utilizator mihaitza22Mihai Nan mihaitza22 Data 4 iunie 2014 09:11:33
Problema Datorii Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <stdio.h>
#include <stdlib.h>

void citireVector(int* v, int nr)
{
	int i, x;
	for(i=0;i<nr;i++)
	{
		scanf("%d", &x);
		v[i] = x;
	}
}

int suma(int* v, int in, int fin)
{
	int i, s;
	s = 0;
	for(i=in-1;i<fin;i++)
	{
		s = s + v[i];
	}
	return s;
}

void rezolvare(int* v, int nr, int m)
{
	int op, x, y, i;
	for(i=0;i<m;i++)
	{
		scanf("%d %d %d", &op, &x, &y);
		if(op == 1)
		{
			printf("%d\n", suma(v, x, y));
		}
		else
		{
			v[x-1] -= y;
		}
	}
}

int main()
{
	freopen("datorii.in", "r", stdin);
	freopen("datorii.out", "w", stdout);
	int nr, m;
	int *v;
	scanf("%d %d", &nr, &m);
	v = (int *) malloc(nr*sizeof(int));
	citireVector(v, nr);
	rezolvare(v, nr, m);
	free(v);
	fclose(stdin);
	fclose(stdout);
	return 0;
}