Cod sursa(job #3313344)

Utilizator Err0rSome Error Err0r Data 3 octombrie 2025 18:05:10
Problema Aprindere Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#include <climits>
#include <algorithm>
using namespace std;

ifstream cin("aprindere.in");
ofstream cout("aprindere.out");

struct rooms {
   bool state;
   bool intrerupator;
   int time;
   int nrcamereafectate;
   int camereafectate[100];
};

int main (){
int n,m,p,s=0;
rooms v[1000];

// citirea datelor
cin >>n>>m;
for (int i=0;i<n;i++){
   cin >> v[i].state;
}

for (int i=0;i<m;i++){
   cin>>p;
   v[p].intrerupator=1;
   cin >> v[p].time >> v[p].nrcamereafectate;
   for (int j=0; j< v[p].nrcamereafectate; j++){
      cin >> v[p].camereafectate[j];
   }
}

//prelucrarea datelor
for (int i=0;i<n;i++){
  if (v[i].intrerupator==1 && v[i].state==0){
   s=s+v[i].time;
   v[i].state==1;
   for (int j=0; j< v[i].nrcamereafectate; j++){
      v[v[i].camereafectate[j]].state = !v[v[i].camereafectate[j]].state;
   }
  }
}

//afiarea
cout << s;

}