verwandt und inspiriert von - Finden von summenfreien Partitionen
Eine Menge Awird hier als eindeutig summenfrei definiert, wenn
- 1) es besteht aus mindestens drei Elementen
|A| ≥ 3, und - 2) seine unterschiedliche Selbstsumme
A + A = { x + y | x, y in A}(mitx,yunterschiedlichen, dhx≠y) hat keine gemeinsamen Elemente mitA.
(Obsolete -... Sie diese nicht nach vorne gehen Sie dann Links hier nur , weil einige Antworten , die es verwendet haben es nicht mit den oben genannten Bedingungen entsprechen Alternativ kann die Gleichung x + y = zhat keine Lösung für x,y,z ∈ A(wieder mit x,y,zdeutlichen, das heißt x≠y, x≠z, y≠z.) )
Für ein einfaches Beispiel {1,3,5}ist es eindeutig summenfrei, ist es aber {1,3,4}nicht. {1,3}und {3}sind es auch nicht, da sie nicht mindestens drei Elemente sind.
Die Herausforderung besteht hier darin, die größte deutlich summenfreie Teilmenge der gegebenen Eingabe zu finden.
Eingang
- Ein ungeordneter Satz
Avon Ganzzahlen in einem beliebigen geeigneten Format . - Die Ganzzahlen können positiv, negativ oder null sein, es kann jedoch davon ausgegangen werden, dass sie in den nativen
[int]Datentyp (oder einen gleichwertigen) Ihrer Sprache passen . - Das Set enthält garantiert nur unterschiedliche Elemente (hier keine Multisets).
- Das Set ist nicht unbedingt sortiert.
Ausgabe
- Die größte Teilmenge von
A(dieAselbst sein könnte) ist eindeutig summenfrei. Die Ausgabe kann in jedem geeigneten Format erfolgen. - Wenn keine solche Teilmenge vorhanden ist, geben Sie eine leere Menge oder einen anderen False-Wert aus .
- Wenn mehrere Teilmengen für die größte gebunden sind, geben Sie eine oder alle aus.
- Die Teilmenge muss nicht unbedingt sortiert sein oder in derselben Reihenfolge wie die Eingabe. Zum Beispiel ist für die Eingabe die
{1,3,5}Ausgabe{5,1,3}akzeptabel.
Zusätzliche Regeln
- Standardlücken sind verboten.
- Dies ist Code-Golf , daher gelten alle üblichen Golfregeln und der kürzeste Code gewinnt.
Beispiele
Input -> Output (any or all)
{0} -> {}
{1, 2, 3} -> {}
{1, 3, 5} -> {1, 3, 5}
{1, 2, 3, 4, 5} -> {1, 2, 5} {1, 2, 4} {1, 3, 5} {2, 3, 4} {2, 4, 5} {3, 4, 5}
{-5, 4, 3, -2, 0} -> {-5, 4, 3} {-5, 4, -2} {4, 3, -2}
{-5, 4, 3, -2} -> {-5, 4, 3} {-5, 4, -2} {4, 3, -2}
{-17, 22, -5, 13, 200, -1, 1, 9} -> {-17, 22, -5, 13, 200, -1, 1} {-17, 22, -5, 200, -1, 1, 9} {-17, -5, 13, 200, -1, 1, 9}