Cod sursa(job #731890)

Utilizator vladstoickvladstoick vladstoick Data 9 aprilie 2012 13:24:13
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<fstream>
using namespace std;
ifstream in("aprindere.in");
ofstream out("aprindere.out");
int nrIntrerupatoare, nrCamere;
int modificare[1001][1001];
int intrerupator[1001];
int stare[1001];
int timpNecesar[1001];
int camera , id , timp;
int main()
{
    in>>nrCamere>>nrIntrerupatoare;
    for(int i=0;i<nrCamere;i++)
        in>>stare[i];
    for(int i=0;i<nrIntrerupatoare;i++)
    {
        in>>camera>>timpNecesar[i]>>modificare[i][0];//modificare[i][0] = nr de elemente
        intrerupator[camera]=i;
        for(int j=1;j<=modificare[i][0];j++)
            in>>modificare[i][j];
    }
    for(int i=0;i<nrCamere;i++)
    {
        if(stare[i]==1)
            continue;
        id=intrerupator[i];
        timp+=timpNecesar[id];
        for(int j=1;j<=modificare[id][0];j++)
            stare[modificare[id][j]]=(stare[modificare[id][j]]+1)%2;
    }
    out<<timp;
    return 0;
}