Cod sursa(job #3331536)

Utilizator kkcalinMarin Calin kkcalin Data 28 decembrie 2025 22:56:48
Problema Aprindere Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <bits/stdc++.h>
using namespace std;

ifstream in ("aprindere.in");
ofstream out ("aprindere.out");

int i, j;
int v[1001];

struct Switch {
    bool exista;
    int nr;
    int t;
    int c[101];
} sw[1001];

int main ()
{
    int n, m;
    in >> n >> m;
    
    for (i = 0; i < n; i++)
        in >> v[i];
        
    for (i = 0; i < m; i++)
    {
        int C, T, NRC;
        in >> C >> T >> NRC;
        
        sw[i].exista = true;
        sw[i].t = T;
        sw[i].nr = NRC;
        
        for (j = 0; j < NRC; j++)
            in >> sw[i].c[j];
    }
    
    long long suma = 0;
    for (i = 0; i < n; i++)
    {
        if (!sw[i].exista)
            continue;
        if (!v[i])
        {
            for (j = 0; j < sw[i].nr; j++)
            {
                int c = sw[i].c[j];
                v[c] ^= 1;
            }
            suma += sw[i].t;
        }
    }
    
    out << suma;
    return 0;
}