Pagini recente » Cod sursa (job #697919) | Cod sursa (job #44780) | Cod sursa (job #1251280) | Cod sursa (job #1130578) | Cod sursa (job #3267761)
#include <bits/stdc++.h>
using namespace std;
int main() {
ifstream fin("aprindere.in");
ofstream fout("aprindere.out");
int n, m, a[1001], poz, t, nr, c[1001], sum = 0;
// Citirea datelor de intrare
fin >> n >> m;
for (int i = 0; i < n; i++) {
fin >> a[i];
}
// Procesăm fiecare întrerupător
for (int i = 0; i < m; i++) {
fin >> poz >> t >> nr;
// Citim camerele afectate de acest întrerupător
for (int j = 0; j < nr; j++) {
fin >> c[j];
}
// Dacă becul din camera poz este stins, acționăm întrerupătorul
if (a[poz] == 0) {
// Inversăm starea becurilor din camerele afectate
for (int j = 0; j < nr; j++) {
a[c[j]] = 1 - a[c[j]]; // 1 devine 0 și 0 devine 1
}
// Adăugăm timpul necesar pentru acțiunea acestui întrerupător
sum += t;
}
}
// Afișăm rezultatul
fout << sum;
return 0;
}