Étant donné un tableau de A de taille n contenant uniquement des entiers positifs. Soit l le plus grand nombre du tableau A. Générer un tableau B de taille 0 à 1 tel que B [j] soit la taille du plus grand sous-ensemble du tableau A dont la valeur XOR est égale à j.XOR de valeurs présentes dans le sous-ensemble du tableau
Contraintes: Taille du tableau A peut être de 1 à 10000. éléments dans le tableau A peut varier de 1 à 1000.
Par exemple: si le tableau A a (1,2,3,4) alors le tableau B serait généré comme ci-dessous.
B (0) = 3 comme le plus grand sous-ensemble ayant une valeur 0 est XOR (1,2,3) et sa taille 3.
B (1) = 2 comme le plus grand sous-ensemble ayant une valeur XOR 1 est (2,3) et sa taille 2.
B (2) = 2, comme le plus grand sous-ensemble ayant une valeur XOR 2 est (1,3) et sa taille 2.
B (3) = 2, comme le plus grand sous-ensemble ayant la valeur XOR 3 est (1,2) et a la taille 2.
B (4) = 4 comme le plus grand sous-ensemble ayant la valeur XOR 4 est (1,2,3,4) et a la taille 4
Mon approche de force brute: Générer tous les sous-ensembles non vides du tableau A et calculer XOR de chaque sous-ensemble et enregistrer le sous-ensemble de taille maximale ayant la valeur XOR j dans B [j].
Y a-t-il une approche plus efficace pour ce faire?
je ne ai jamais pensé que ce pourrait être fait en utilisant la programmation dynamique. Pouvez-vous me montrer le lien qui explique le mieux cette approche? –
Je n'ai pas de lien en tant que tel, je peux essayer de mettre à jour la réponse pour mieux l'expliquer – marvel308