Cod sursă (job #118531)

Utilizator avatar andreea_zaharia Zaharia Andreea andreea_zaharia IP ascuns
Problemă Beculețe (clasele 9-10) Compilator cpp | 0.81 kb
Rundă Tema 15 clasele 9-10 2014/15 Status evaluat
Dată 16 feb. 2015 22:40:12 Scor 28
#include <bitset>
#include <iostream>
#include <fstream>

using namespace std;

#define N 50001
#define D 10000

bitset <N> prec (1);
bitset <N> crt (0);
bitset <N> aux (0);

ifstream fin ("beculete.in");
ofstream fout ("beculete.out");

int main () {
    int n, d, l, c, v, x = 1;

    fin >> n >> d >> l >> c >> v;

    if (n == 1) {
        fout << "1" << endl;
        return 0;
    }

    int nc = 2;

    while (nc <= n) {
            //XOR
        aux = prec << 1;
        crt = prec ^ aux;

        while (l == nc && x <= d) {
            crt.set (nc - c, v);
            fin >> l >> c >> v;
            x++;
        }

        prec = crt;
        nc++;
    }

    for (int i = n -1; i >= 0; i--) {
        fout << crt[i] << " ";
    }
    fout << "\n";

    return 0;
}