Проблема заключается в следующем:Равной суммы подмножеств гибридной
Вам предоставляется множество положительных целых чисел {a1, a2, a3, ..., ап}, в котором нет же числа (a1 существует только один раз , a2 существует только один раз, ...) например A = {12, 5, 7, 91}. Вопрос: Существуют ли два непересекающихся подмножества A, A1 = {b1, b2, ..., bm} и A2 = {c1, c2, ..., ck}, так что b1 + b2 + ... + bm = c1 + c2 + ... + ck? Обратите внимание на следующее: для A1 и A2 не обязательно охватывать A, поэтому проблема не будет автоматически уменьшена до проблемы суммирования подмножества. например A = {2,5,3,4,8,12} A1 = {2,5}, поэтому сумма A1 равна 7 A2 = {3,4}, поэтому сумма A2 равна 7 . Мы обнаружили два непересекающихся подмножеств A с описанным свойством, чтобы проблема была решена.
Как я могу решить эту проблему? Могу ли я сделать что-то лучше, чем найти все возможные (непересекающиеся) подмножества, рассчитать их суммы и найти две равные суммы?
Спасибо за ваше время.
Решение O (2^N), упомянутое в вопросе, лучше, чем это решение O (3^N) :-) [За счет принятия требуемого пространства O (2^N).] – ShreevatsaR
Да, но мое решение O (1) все еще козыряет его; o) – Motti
Определенно. Безупречное решение O (1). :-) – ShreevatsaR