Pagini recente » Cod sursa (job #1964742) | Cod sursa (job #880809) | Cod sursa (job #2486174) | Cod sursa (job #1446906) | Cod sursa (job #442719)
Cod sursa(job #442719)
#include <stdio.h>
#include <stdlib.h>
int n,m;
int *sum,*val,**cod;
void citire(FILE *f){
int i,j=0;
fscanf(f,"%d",&n);
printf("n=%d\n",n);
val = (int*)calloc( n, sizeof(int) );
fscanf(f,"%d",&m);
cod = (int**)malloc(m*sizeof(int*));//m linii
for ( i = 0; i<m; i++)
cod[i] = (int*)calloc(3, sizeof(int));//a cate 3 coloane
fscanf(f,"\n");
for(i=0; i<n;i++)
fscanf(f,"%d",&val[i]);
for(j=0;j<m;j++){
for(i=0;i<3;i++)
fscanf(f,"%d",&cod[j][i]);
fscanf(f,"\n");
}
}
void procesare(FILE* fout){
int i,j,k=0;
int var = 0;
sum = (int*)calloc( m, sizeof(int) );
for(i=0;i<m;i++){
if(cod[i][0]==0)
val[cod[i][1]-1]-= cod[i][2];
else {
for(j=cod[i][1]-1;j<=cod[i][2]-1;j++)
sum[k] += val[j];
fprintf(fout,"%d\n",sum[k]);
k++;
}
}
}
int main(){
int i,j;
FILE* f;
f=fopen("datorii.in","r");
citire(f);
fclose(f);
FILE* fout;
fout = fopen("datorii.out","w");
procesare(fout);
fclose(fout);
system("PAUSE");
return 0;
}