Cod sursa(job #1083559)

Utilizator leontinLeontin leontin Data 16 ianuarie 2014 03:44:52
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2013 Marime 0.8 kb
#include <fstream>
#include <vector>

using namespace std;

const int MAX_N = 1005;

int n, m, a[MAX_N], mon[MAX_N], var2;
vector <int> L[MAX_N];

int main()
{


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



    f >> n >> m;
    for (int i = 0; i < n; i++)
        f >> a[i];

    for (int i = 1; i <= m; i++) {
        int val1, tp, cnt;
        f >> val1 >> tp;
        mon[val1] = tp;
        f >> cnt;
        for (int j = 1; j <= cnt; j++) {
            int tmp;
            f >> tmp;
            L[val1].push_back (tmp);
        }
    }

    for (int i = 0; i < n; i++)
        if (a[i] == 0) {
            var2 += mon[i];
            for (size_t j = 0; j < L[i].size(); j++)
                a[L[i][j]] ^= 1;
        }

    g << var2;
    return 0;
}