Pagini recente » Cod sursa (job #571878) | Istoria paginii utilizator/cnpr_slincu_lazar_manghiuc | Profil Horia123144 | Cod sursa (job #1177386) | Cod sursa (job #1247079)
#include <stdio.h>
#include <malloc.h>
int main()
{
int *n, *m, *suma, *bitOperatie, *p, *q, a[15000], i, j;
FILE *f = fopen("datorii.in","r");
FILE *g = fopen("datorii.out","w");
n = (int*)malloc(sizeof(int));
m = (int*)malloc(sizeof(int));
fscanf(f,"%d %d",n,m);
for (i=0;i<*n;i++)
{
fscanf(f,"%d",&a[i]);
}
free(n);
for (i=1;i<=*m;i++)
{
bitOperatie = (int*)malloc(sizeof(int));
p = (int*)malloc(sizeof(int));
q = (int*)malloc(sizeof(int));
fscanf(f,"%d %d %d",bitOperatie,p,q);
if (*bitOperatie == 1)
{
suma = (int*)malloc(sizeof(int));
*suma = 0;
for (j=*p-1;j<=*q-1;j++)
{
*suma+=a[j];
}
fprintf(g,"%d\n",*suma);
free(suma);
suma = NULL;
}
else
{
a[*p-1]-=*q;
}
free(bitOperatie);
free(p);
free(q);
}
free(m);
fclose(f);
fclose(g);
return 0;
}