Cod sursa(job #1136089)

Utilizator apopeid15Apopei Daniel apopeid15 Data 8 martie 2014 19:03:01
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<fstream>
using namespace std;
ifstream f("aprindere.in");
ofstream g("aprindere.out");
int n, m, stare[1010], timp[1010], mod[1010][1010];
void Citeste()
{
    int i, j, nr, c, x;
    f>>n>>m;
    for (i=0; i<n; ++i) f>>stare[i];
    for (i=1; i<=m; ++i)
    {
        f>>c;
        f>>timp[c]>>nr;
        for (j=1; j<=nr; ++j)
        {
            f>>x;
            mod[c][x]=1;
        }
    }
}
void Solve()
{
    int i, j, sum=0;
    for (i=0; i<n; ++i)
        if (!stare[i])
        {
            sum+=timp[i];

            for (j=0; j<n; ++j)
                stare[j]^=mod[i][j];
        }

    g<<sum<<"\n";
}
int main()
{
    Citeste();

    Solve();

    f.close();
    g.close();
    return 0;
}