Cod sursa(job #2965055)

Utilizator davidgeo123Georgescu David davidgeo123 Data 14 ianuarie 2023 12:53:38
Problema Aprindere Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>

using namespace std;

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

bool v[1001];

short mat[1001][1001];

int main()
{
    int n, m;
    fin>>n>>m;
    for(int i=0; i<n; i++)fin>>v[i];
    for(int i=0; i<m; i++)
    {
        fin>>mat[i][0]>>mat[i][1]>>mat[i][2];
        for(int j=1; j<=mat[i][2]; j++)
            fin>>mat[i][2+j];
    }
    for(int i=0; i<m-1; i++)
        for(int j=i+1; j<m; j++)
            if(mat[i][0]>mat[j][0])swap(mat[i], mat[j]);
    int k=0;
    for(int i=0; i<m; i++)
    {
        if(v[mat[i][0]]==0)
        {
            k+=mat[i][1];
            for(int j=1; j<=mat[i][2]; j++)
                v[mat[i][j+2]]=1-v[mat[i][j+2]];
        }

    }
    fout<<k;
    return 0;
}