Pagini recente » Cod sursa (job #1071714) | Cod sursa (job #1314) | Rating Andrei Tudor Popescu (EmergencyILC) | Cod sursa (job #298043) | Cod sursa (job #16853)
Cod sursa(job #16853)
#include <stdio.h>
int n,m,state[1100],total=0;
struct
{
int nr,t;
int a[1100];
} room[1100];
void citire(void)
{
int i,j,index;
FILE *f=fopen("aprindere.in","r");
fscanf(f,"%d %d",&n,&m);
for(i=0;i<n;i++) fscanf(f,"%d",&state[i]);
for(i=0;i<n;i++) { room[i].nr=room[i].t=0; }
for(i=0;i<m;i++)
{
fscanf(f,"%d",&index);
fscanf(f,"%d %d",&room[index].t,&room[index].nr);
for(j=0;j<room[index].nr;j++) fscanf(f,"%d",&room[index].a[j]);
if(state[index]==0)
{
total+=room[index].t;
for(j=0;j<room[index].nr;j++) state[room[index].a[j]]=1-state[room[index].a[j]];
}
}
fclose(f);
}
int main(void)
{
citire();
FILE *f=fopen("aprindere.out","w");
fprintf(f,"%d\n",total);
fclose(f);
return 0;
}