Mam kilka tablic liczb (każdy element tablicy może tylko przyjmować wartość 0 lub 1) jak tenZnalezienie podzbiór, który spełnia pewne warunki
v1: 1; 0; 0; 1; 1; v2: 0; 1; 0; 0; 1; v3: 1; 1; 0; 1; 0; v4: 1; 0; 0; 1; 0; v5: 1; 1; 0; 1; 1; v6: 1; 1; 0; 1; 1;
pragnę znaleźć podzbiory takie, że gdy tablice są zsumowane, wynikowa tablica ma pojedyncze elementy, które są wielokrotnościami 2. Na przykład, v1 + v2 + v3 daje wynikową tablicę 2, 2, 0, 2, 2. Wynikowa tablica może mieć dowolną wartość wielokrotnością 2.
Innym przykładem
v1: 1, 1, 1, 0, 1, 0 v2: 0, 0, 1, 0, 0, 0 v3: 1, 0, 0, 0, 0, 0 v4: 0, 0, 0, 1, 0, 0 v5: 1, 1, 0, 0, 1, 0 v6: 0, 0, 1, 1, 0, 0 v7: 1, 0, 1, 1, 0, 0
W tym przykładzie odpowiednimi odpowiedziami są v1 + v2 + v5 i v3 + v6 + v7.
Mam na myśli rozwiązanie typu "brute force", ale chciałem sprawdzić, czy istnieje skuteczniejsza metoda. Czy jest to równoważne z problemem sumy podzbiorów?
Google: "podzbiór xor problem" –
Czy można opracować: 1.) Jak długo są zestawy 2.) Czy potrzebujesz tablicy sum wyników? –
Liczba elementów w każdej tablicy i liczba takich tablic jest nieznana na początku programu. Właściwie nie potrzebuję tablicy sum. Tylko liczby tablic. Potrzebuję 1, 2, 5, jeśli wynikiem jest v1 + v2 + v5. – Neo