Pagini recente » Cod sursa (job #1304133) | Cod sursa (job #1066392)
#include<fstream>
#include<vector>
using namespace std;
const int Nmax = 1024;
ifstream f("aprindere.in");
ofstream g("aprindere.out");
int n, m, tmin, timp[Nmax];
vector<int> intrerupatoare[Nmax];
bool camera[Nmax];
int main() {
int i, j, camera_curenta, timp_curent, nr_camere, camera_vecina;
f >> n >> m;
for (i = 0; i < n; ++i)
f >> camera[i];
for (i = 1; i <= m; ++i) {
f >> camera_curenta >> timp_curent >> nr_camere;
timp[camera_curenta] = timp_curent;
for (j = 1; j <= nr_camere; ++j) {
f >> camera_vecina;
intrerupatoare[camera_curenta].push_back(camera_vecina);
}
}
for (i = 0; i < n; ++i)
if (camera[i] == 0) {
tmin += timp[i];
for (auto it = intrerupatoare[i].begin(); it != intrerupatoare[i].end(); ++it)
camera[*it] = !camera[*it];
}
g << tmin << "\n";
f.close();
g.close();
return 0;
}
s