Cod sursa(job #1067265)

Utilizator krissu93FMI Tiugan Cristiana Elena krissu93 Data 26 decembrie 2013 17:08:17
Problema Aprindere Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
#include <vector>
using namespace std;

const int NMAX = 1001;
int n, m;
short aprins[NMAX];
int timpi[NMAX];
vector <int> cam[NMAX];
void get_input(){
  int i;
  ifstream in("aprindere.in");
  in >> n >> m;
  for(i = 0; i < n; ++i)
    in >> aprins[i];
  for(i = 0; i < m; ++i){
    int j, c, tc, nrc;
    in >> c >> tc >> nrc;
    timpi[c] = tc;
    for(j = 0; j < nrc; j++){
      int loc;
      in>>loc;
      cam[c].push_back(loc);
    }
  }

  in.close();

}
int solve(){
  int total = 0;
  for (int i = 0; i < n; ++i)
    if (!aprins[i]) {
      total += timpi[i];
     int  sz = cam[i].size();
      for (int j = 0; j < sz; j++)
        aprins[cam[i][j]] = !aprins[cam[i][j]];
    }
   return total;

}

int main(){
  get_input();
  ofstream out("aprindere.out");
  out<<solve();
  out.close();
  return 0;
}