Cod sursa(job #1077701)

Utilizator IoannaPandele Ioana Ioanna Data 11 ianuarie 2014 16:28:51
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.86 kb
#include <fstream>
#include <vector>
#define NMAX 1000
using namespace std;

int n, m;
int timp;

vector<int> v[NMAX];
int becuri[NMAX];

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

void read() {
    in>>n>>m;
    for (int i = 0; i < n; i++) {
        in>>becuri[i];
    }
    int bec, nr, t;
    int c;
    for (int i = 0; i < m; i++) {
        in>>bec>>t>>nr;
        v[bec].push_back(t);
        for (int j = 0; j < nr; j++) {
            in>>c;
            v[bec].push_back(c);
        }
    }
}

void solve() {
    for (int i = 0; i < n; i++) {
        if (!becuri[i]) {
            timp += v[i][0];
            for (int j = 1; j < v[i].size(); j++) {
                becuri[v[i][j]] = 1 - becuri[v[i][j]];
            }
        }
    }
    out<<timp;
}

int main() {
    read();
    solve();
    return 0;
}