21.05.2023, 19:16
COMBIN_LIST:
COMBIN_LIST: =LAMBDA(n;k;LET(
x;EINDEUTIG(LINKS(PERMUT_RPT_LIST(n);k));
FILTER(x;NACHZEILE(x;LAMBDA(a;TEXTKETTE(SORTIEREN(TEIL(a;SEQUENZ(;k);1);1;1;1))=a)))))
mit der externen Funktion PERMUT_RPT_LIST (die damit auch die Beschränkungen für COMBIN_LIST vorgibt) zeigt als =COMBIN_LIST("ABACDA";3) folgende Kombinationen (3 aus 6, mit Wdh.) unsortiert an:
ACD
AAD
AAC
AAB
ABD
ABC
BCD
AAA
=COMBIN_LIST("ABCDFE";3) ergibt dann folgende Kombinationen (3 aus 6, ohne Wdh.), unsortiert:
DEF
CEF
CDF
CDE
BEF
BDF
BDE
BCF
BCE
BCD
AEF
ADF
ADE
ACF
ACE
ACD
ABF
ABE
ABD
ABC
Die alte Version von COMBIN_LIST ist viel länger, unnötig statisch im Code und im Umfang auf k=6 beschränkt.
COMBIN_LIST: =LAMBDA(n;k;LET(
x;EINDEUTIG(LINKS(PERMUT_RPT_LIST(n);k));
FILTER(x;NACHZEILE(x;LAMBDA(a;TEXTKETTE(SORTIEREN(TEIL(a;SEQUENZ(;k);1);1;1;1))=a)))))
mit der externen Funktion PERMUT_RPT_LIST (die damit auch die Beschränkungen für COMBIN_LIST vorgibt) zeigt als =COMBIN_LIST("ABACDA";3) folgende Kombinationen (3 aus 6, mit Wdh.) unsortiert an:
ACD
AAD
AAC
AAB
ABD
ABC
BCD
AAA
=COMBIN_LIST("ABCDFE";3) ergibt dann folgende Kombinationen (3 aus 6, ohne Wdh.), unsortiert:
DEF
CEF
CDF
CDE
BEF
BDF
BDE
BCF
BCE
BCD
AEF
ADF
ADE
ACF
ACE
ACD
ABF
ABE
ABD
ABC
Die alte Version von COMBIN_LIST ist viel länger, unnötig statisch im Code und im Umfang auf k=6 beschränkt.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel).