Pagini recente » Cod sursa (job #2664030) | Cod sursa (job #2437900) | Cod sursa (job #1851820) | Cod sursa (job #910987) | Cod sursa (job #2260196)
#include <bits/stdc++.h>
using namespace std;
ifstream f("aprindere.in");
ofstream g("aprindere.out");
int main()
{
int N,M;
f>>N>>M;
vector<int> V(N);
for(auto &i:V) f>>i;
map<int,pair<int,vector<int>>> S;
for(int i=0,k,n;i<M;i++)
{
f>>k;
f>>S[k].first>>n;
S[k].second.resize(n);
for(auto &i:S[k].second) f>>i;
}
int cost=0;
for(int i=0;i<N;i++)
{
if(V[i]==1) continue;
//if(S[i].second.empty()) {g<<-1; break;}
for(auto j:S[i].second) V[j]=!(bool)V[j];
cost+=S[i].first;
}
g<<cost;
return 0;
}