Cod sursa(job #655986)

Utilizator AndreeaNNedelcu Andreea AndreeaN Data 3 ianuarie 2012 18:23:19
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <stdio.h>
FILE *f=fopen("aprindere.in","r"),*g=fopen("aprindere.out","w");
long int n,m,v[1003];
struct intr{
   long  int c;
   long int t;
   long int nr;
   long int u[1003];
}x[1003];

void citire(){
long int i,j,camera,t,nr;
    fscanf(f,"%ld %ld\n",&n,&m);
    for(i=0; i<n; i++){
        fscanf(f,"%ld ",&v[i]);
    }

    for(i=1; i<=m; i++){
        fscanf(f,"%ld %ld %ld ",&camera,&t,&nr);
        x[camera].t=t;
        x[camera].nr=nr;
        for(j=1; j<=nr; j++){
            fscanf(f,"%ld ",&x[camera].u[j]);
        }
    }

}

void parcurgere(){
long int i,j,s;
    s=0;
    for(i=0; i<n; i++){
       // fprintf(g,"%ld ",v[i]);
        if(v[i]==0 && x[i].nr!=0){

            s+=x[i].t;
            for(j=1; j<=x[i].nr; j++){
                if(v[x[i].u[j]]==0){
                    v[x[i].u[j]]=1;
                }
                else{v[x[i].u[j]]=0;}
            }
        }
    }
    fprintf(g,"%ld",s);
}
int main()
{
    citire();
    parcurgere();
    return 0;
}