Pagini recente » Cod sursa (job #485857) | Cod sursa (job #1896927) | Cod sursa (job #2944771) | Cod sursa (job #845873) | Cod sursa (job #339063)
Cod sursa(job #339063)
#include<cstdio>
#include<vector>
#define MAXN 1001
using namespace std;
vector <int> Tree[MAXN];
int i , j , N , M , subject , cost , count , Result ,bec;
bool taken[MAXN];
int main()
{
freopen ("aprindere.in","r",stdin);
freopen ("aprindere.out","w",stdout);
scanf("%d %d",&N ,&M );
for( i = 0; i < N ; ++i )
scanf("%d",&taken[i]);
for( i = 1 ; i <= M ; ++i ) {
scanf("%d %d %d",&subject , &cost , &count);
Tree[subject].push_back(cost);
for( ; count --; ) {
scanf("%d",&bec);
Tree[subject].push_back(bec);
}
}
for( i = 0 ; i < N ; ++i ) {
if ( !taken[i] ) {
Result += Tree[i][0];
for( j = 1 ; j < Tree[i].size() ;++j )
taken[Tree[i][j]] ^= 1;
}
}
printf("%d\n",Result);
return 0;
}