Cod sursa(job #2491660)

Utilizator stan_flaviusStan Flavius Stefan stan_flavius Data 12 noiembrie 2019 21:58:51
Problema Aprindere Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.19 kb
#include <fstream>
#include <algorithm>
#define nmax 1001

using namespace std;
ifstream fin("aprindere.in");
ofstream fout("aprindere.out");

int nr_camere, nr_intrerupatoare;
int vec_camere[nmax];

struct intrerupator
{
    int cam;
    int timp;
    int nr_cam_modif;
    int cam_modif[nmax];
};

intrerupator vec[nmax];
int main()
{
    fin>>nr_camere>>nr_intrerupatoare;
    for(int i=1; i<=nr_camere; i++)
        fin>>vec_camere[i];
    for(int i=1; i<=nr_intrerupatoare; i++)
        {
            int y;
            fin>>y; y++;
            fin>>vec[y].timp>>vec[y].nr_cam_modif;
            for(int j=1; j<=vec[y].nr_cam_modif; j++)
                {
                    int x;
                    fin>>x;
                    vec[y].cam_modif[j]=x+1;
                }
        }

    int tot_timp=0;
    for(int i=1; i<=nr_camere; i++)
        {
            if(vec_camere[i]==0)
                {
                    for(int j=1; j<=vec[i].nr_cam_modif; j++)
                        vec_camere[vec[i].cam_modif[j]]=1-vec_camere[vec[i].cam_modif[j]];
                    tot_timp+=vec[i].timp;
                }
        }
    fout<<tot_timp;
    return 0;
}