Cod sursa(job #957071)

Utilizator primulDarie Sergiu primul Data 4 iunie 2013 13:58:54
Problema Aprindere Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <fstream.h>
 
ifstream f1("aprindere.in");
ofstream f2("aprindere.out");
 
int main(){
    int n,m,i,a[1001],c[1002],nr[1001],v[1001][101],j,ok;
    double t[1001],s=0;
    f1>>n;f1>>m;
    for (i=0;i<n;i++){
        f1>>a[i];
    }
    for (i=1;i<=m;i++){
        f1>>c[i];
        f1>>t[i];
        f1>>nr[i];
        for (j=1;j<=nr[i];j++){
            f1>>v[i][j];
        }
    }
    c[0]=0;
    for (i=0;i<n;i++){
        if (a[i]==0){
           //f2<<"* "<<i<<" *";
           ok=0;
           for (j=1;j<=m;j++)if (c[j]==i){ok=j;break;}
           if (c[ok]==i){
                         s=s+t[ok];
                         for (j=1;j<=nr[ok];j++){
                             a[v[ok][j]]=(a[v[ok][j]]+1)%2;
                         }
           }
        }
    }
    f2<<s<<'\n';
     
    f1.close();
    f2.close();
    return 0;
}