Cod sursa(job #3368267)

Utilizator georgiemanea georege caharisitan georgie Data 14 octombrie 2026 08:45:53
Problema Generare de permutari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <bits/stdc++.h>

using namespace std;

#define lista bitset<122>

stack<lista> st;

bool vrf( lista x ) {
    x &= st.top();
    return x.count();
}

void comb( lista &fr ) {
    fr = fr | st.top();
}

int main() {
    ifstream cin( "liste.in" );
    ofstream cout( "liste.out" );
    int n;
    cin >> n;
    for( int i = 1; i <= n; i++ ) {
        lista x;
        int a, b;
        cin >> b;
        for( int i = 1; i <= b; i++ ) {
            cin >> a;
            x[a] = 1;
        }
        while( !st.empty() && vrf( x ) ) {
            comb( x );
            st.pop();
        }
        st.push( x );
    }
    cout << st.size();

    return 0;
}