Cod sursa(job #10302)

Utilizator alex_damianDamian Alexandru alex_damian Data 28 ianuarie 2007 10:55:50
Problema Aprindere Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <cstdio>

#define FIN "aprindere.in"
#define FOUT "aprindere.out"
#define MAXN 1001
#define MAXNR 101

struct rec {
	int timp, nr, cam[MAXNR];
} intr[MAXN];

int n, m, i, j, x, state[MAXN];


int main() {
	freopen(FIN, "r", stdin);
  freopen(FOUT, "w", stdout);
  scanf("%d %d", &n, &m);
  for (i=0; i<n; i++) scanf("%d", &state[i]);
  for (i=1; i<=m; i++) {
     scanf("%d", &x);
     scanf("%d %d", &intr[x].timp, &intr[x].nr);
     for (j=1; j<=intr[x].nr; j++) scanf("%d", &intr[x].cam[j]);
  }
	int cost = 0;
	for (i=0; i<n; i++) {
     if (!state[i]) {
       cost += intr[i].timp;
       for (j=1; j<=intr[i].nr; j++) ++state[intr[i].cam[j]] %= 2;
     }
  }
	printf("%d\n", &cost);
  return 0;
}