Cod sursa(job #1261753)

Utilizator costty94Duica Costinel costty94 Data 12 noiembrie 2014 17:41:15
Problema Datorii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb

#include<stdio.h>
#include <stdlib.h>
#define NR 15000

 main ()
{
    FILE *p1, *p2;
    int i,j,n,binar,first,last;
    long int m,S;
    int a [NR];
    int k;
	p1 = fopen( "datorii.in", "r" );
	p2=fopen( "datorii.out", "w" );

    if ( p1 == NULL )
    {
        printf("Cannot open file for read\n");
        exit(0);
    }

    if ( p2 == NULL )
    {
        printf("Cannot open file for write\n");
        exit(0);
    }
	i = 1;
	fscanf( p1, "%d", &n);
	fscanf(p1, "%ld", &m);
    for( j=1; j<=n; j++)
	fscanf( p1, "%d", &a[i++]);
	while (!feof(p1))
	{
		fscanf( p1, "%d", &binar );
		fscanf( p1, "%d", &first );
		fscanf( p1, "%d", &last );
		if( binar == 1 )
			{	S = 0;
				for( j=first; j<=last; j++)
					S = S + a[j];
				fprintf( p2, "\n%ld" ,S );
			}
        else
			a[first]-=last;

	}
		fclose(p1);
		fclose(p2);

}