Pagini recente » Cod sursa (job #2446598) | Cod sursa (job #2147071) | Istoria paginii runda/sim01/clasament | Cod sursa (job #2360187) | Cod sursa (job #1733757)
#include <fstream>
#include <math.h>
#include <algorithm>
#include <unordered_map>
#include <bitset>
using namespace std;
#define ll long long
#define llu long long unsigned
#define pb push_back
#define mp make_pair
string problemName = "aprindere";
string inFile = problemName+".in";
string outFile = problemName+".out";
ifstream fin(inFile.c_str());
ofstream fout(outFile.c_str());
const int N = 1e3;
bool initial[N+5];
int T[N+5], info[N+5][N/10+5];
int main(){
int n,m,i,j,ans,c;
ans = 0;
fin>>n>>m;
for(i = 1;i <= n;i++){
fin>>initial[i];
}
for(i = 1;i <= m;i++){
fin>>c;
c++;
fin>>T[c];
fin>>info[c][0];
for(j = 1;j <= info[c][0];j++){
fin>>info[c][j];
info[c][j]++;
}
}
for(i = 1;i <= n;i++){
if(initial[i] == 0){
ans += T[i];
for(j = 1;j <= info[i][0];j++){
initial[info[i][j]] ^= 1;
}
}
}
fout<<ans;
return 0;
}