Cod sursa(job #1343145)

Utilizator LegionHagiu Stefan Legion Data 14 februarie 2015 22:21:33
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
bool stare[1010];
int cost[1010];
vector<int> modificari[1010];
int main()
{
    ifstream in("aprindere.in");
    ofstream out("aprindere.out");
    int n,m,i,x,p,j,y,t=0;
    in>>n;
    in>>m;
    for (i=1;i<=n;i++)
    {
        in>>stare[i];
    }
    for (i=1;i<=m;i++)
    {
        in>>x;
        x++;
        in>>cost[x];
        in>>p;
        for (j=1;j<=p;j++)
        {
            in>>y;
            y++;
            modificari[x].push_back(y);
        }
    }
    for (i=1;i<=n;i++)
    {
        if (stare[i]==0)
        {
            t+=cost[i];
            for (j=0;j<modificari[i].size();j++)
            {
                stare[modificari[i][j]]=!stare[modificari[i][j]];
            }
        }
    }
    out<<t;
}