Pagini recente » Cod sursa (job #2439833) | Cod sursa (job #3198488) | Cod sursa (job #2480617) | Cod sursa (job #922431) | Cod sursa (job #14780)
Cod sursa(job #14780)
using namespace std;
#include <cstdio>
#define FIN "aprindere.in"
#define FOUT "aprindere.out"
#define NMAX 1001
int N, M;
struct robbery {int afect[101], stare, tmp, nr;};
robbery v[NMAX];
int
main ()
{
int i, j, c, sol = 0, t, nr;
freopen (FIN, "rt", stdin);
freopen (FOUT, "wt", stdout);
scanf ("%d%d", &N, &M);
for (i = 0; i < N; ++ i)
scanf ("%d", &v[i].stare);
for (i = 1; i <= M; ++ i)
{
scanf ("%d", &c);
scanf ("%d", &v[c].tmp);
scanf ("%d", &v[c].nr);
for (j = 1; j <= v[c].nr; ++ j)
scanf ("%d", &v[c].afect[j]);
}
for (i = 0; i < N; ++ i)
{
if (v[i].stare)
continue;
sol += v[i].tmp;
for (j = 1; j <= v[i].nr; ++ j)
v[v[i].afect[j]].stare = 1 - v[v[i].afect[j]].stare;
}
printf ("%d\n", sol);
return 0;
}