Pagini recente » Cod sursa (job #1089754) | Cod sursa (job #2418536) | Cod sursa (job #1819343) | Cod sursa (job #1608790) | Cod sursa (job #10476)
Cod sursa(job #10476)
#include <stdio.h>
FILE *in = fopen("aprindere.in", "r"), *out = fopen("aprindere.out", "w");
int i, j;
int N, M;
int camere[1000];
int intrerupatoare[1000][3000];
void citeste()
{
fscanf(in, "%d %d", &N, &M);
for ( i = 0; i < N; ++i )
fscanf(in, "%d", &camere[i]);
for ( i = 0; i < M; ++i )
{
fscanf(in, "%d %d %d", &intrerupatoare[i][0], &intrerupatoare[i][1], &intrerupatoare[i][2]);
for ( j = 0; j < intrerupatoare[i][2]; ++j )
fscanf(in, "%d", &intrerupatoare[i][j+3]);
}
}
int main()
{
int sum = 0;
citeste();
for ( i = 0; i < M; ++i )
{
if ( camere[intrerupatoare[i][0]] == 0 )
{
sum += intrerupatoare[i][1];
for ( j = 0; j < intrerupatoare[i][2]; ++j )
{
if ( camere[intrerupatoare[i][j+3]] == 0 )
camere[intrerupatoare[i][j+3]] = 1;
else
camere[intrerupatoare[i][j+3]] = 0;
}
}
}
fprintf(out, "%d\n", sum);
return 0;
}