Cod sursa(job #1545663)

Utilizator fanache99Constantin-Buliga Stefan fanache99 Data 6 decembrie 2015 22:13:10
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<cstdio>
#include<vector>
using namespace std;
struct switcher{int cost,dim;vector<int> v;};
switcher v[1010];
int light[1010];
int main(){
    freopen("aprindere.in","r",stdin);
    freopen("aprindere.out","w",stdout);
    int n,m,i,j,room,x,total=0;
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
        scanf("%d",&light[i]);
    for(i=1;i<=m;i++){
        scanf("%d",&room);
        room++;
        scanf("%d%d",&v[room].cost,&v[room].dim);
        for(j=1;j<=v[room].dim;j++){
            scanf("%d",&x);
            x++;
            v[room].v.push_back(x);
        }
    }
    for(i=1;i<=n;i++){
        if(light[i]==1)
            continue;
        total+=v[i].cost;
        for(j=0;j<v[i].dim;j++)
            light[v[i].v[j]]^=1;
    }
    printf("%d",total);
    return 0;
}