Pagini recente » Cod sursa (job #1007930) | Cod sursa (job #2014016) | Cod sursa (job #532574) | Cod sursa (job #2401412) | Cod sursa (job #1956492)
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
int x, n, m, timp, v[1001];
struct camera {
int c, t, nr;
vector <int> nr_c;
} s[1001];
bool sortare (camera a, camera b){
return a.c < b.c;
}
int main ()
{
freopen ("aprindere.in", "r", stdin);
freopen ("aprindere.out", "w", stdout);
scanf ("%d %d", &n, &m);
for (int i=0; i<n; i++){
scanf ("%d", &v[i]);
}
for (int i=0; i<m; i++){
scanf ("%d %d %d", &s[i].c, &s[i].t, &s[i].nr);
for (int j=0; j<s[i].nr; j++){
scanf ("%d", &x);
s[i].nr_c.push_back (x);
}
}
sort (s+1, s+n+1, sortare);
for (int i=0; i<m; i++){
if (v[i] == 0){
timp += s[i].t;
for (int j=0; j<s[i].nr; j++){
v[s[i].nr_c[j]] = (v[s[i].nr_c[j]] + 1) %2;
}
}
}
printf ("%d", timp);
return 0;
}