Subsets

Problem Link

Solution by TheRealFertos100 pts

Code / Notes

#include <bits/stdc++.h>
using namespace std;

int main() {
    int l;
    cin >> l;
    vector <int> q;
    for (int i=1; i<=l; i++) {
        q.push_back(i);
    }
    for (int w=0;w<(1 << l);w++) {//sim
        cout << '-' << ' ';
        for (int i=0;i<l;i++) {
            // aí tem que checar se w tem o i-ésimo bit (acho que voce sabe)
            // uma dica: não precisa botar o != 0
            // nem foi isso que eu quis dizer

            // só if (w & (1 << i)) é suficiente
            // if (1) -> ele dá certo
            // if (0) -> ele não faz
            // qualquer coisa que não for 0 ele conta como verdadeiro

            if ((w & (1 << i))) {//que estranho
                cout << q[i] << ' ';
            }
        }
        cout << endl;
    }
}

Last updated 1 month, 1 week ago


« Back to problem