Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int printArray(int * arr, unsigned sz) {
- for (unsigned i = 0; i < sz; i++) {
- cout << arr[i] << "\t";
- }
- cout << endl;
- return 0;
- }
- void genElemKSet(int * uset, int * set, unsigned sz, int pos, unsigned curr,int* komboto,int razmer,int currKombo) {
- int nzkakdagokrustq = 0;
- if (curr == sz) printArray(set, sz);
- else {
- if (curr != pos) {
- set[curr] = 0;
- genElemKSet(uset, set, sz, pos, curr + 1,komboto,razmer,currKombo);
- set[curr] = 1;
- genElemKSet(uset, set, sz, pos, curr + 1,komboto,razmer,currKombo);
- }
- else {
- if (currKombo == razmer)
- {
- set[curr] = 0;
- genElemKSet(uset, set, sz, pos, curr + 1, komboto, razmer, currKombo);
- set[curr] = 1;
- genElemKSet(uset, set, sz, pos, curr + 1, komboto, razmer, currKombo);
- }
- else
- {
- set[curr] = komboto[currKombo];
- genElemKSet(uset, set, sz, pos + 1, curr + 1, komboto, razmer, currKombo + 1);
- }
- }
- }
- }
- int main()
- {
- const unsigned sz = 5;
- int uarr[sz] = { 1, 2, 3, 4, 5 };
- char bitmaskA[] = "10110";
- int poziciq, dulgposl; //poziciqta i duljinata na kombinaciqta
- cin >> dulgposl;
- int* arrKombo = new int[dulgposl];
- for (int i = 0; i < dulgposl; i++) // pulnene na kombinaciqta
- cin >> arrKombo[i];
- cin >> poziciq; // poziciqta
- int subset[sz];
- cout << "Genetate all subsets of the universal set, that have are nechetni mamkamu: " << endl;
- genElemKSet(uarr,subset,sz,poziciq,0,arrKombo,dulgposl,0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement