R , 84 77 Bytes
-7 Bytes dank mb7744
unique(lapply(x<-sort(table(scan()),T),function(y)as.double(names(x[x==y]))))
Liest von stdin; Gibt eine Liste mit Untervektoren von ganzen Zahlen in aufsteigender Reihenfolge zurück. Wenn wir Strings anstelle von ints zurückgeben könnten, dann könnte ich 11 Bytes löschen (den Aufruf von entfernen as.double
), aber das war es auch schon. Die table
Funktion von R übernimmt hier das schwere Heben, indem die Vorkommen jedes Mitglieds seiner Eingabe gezählt werden. dann aggregiert es sie nach count ( names
). Natürlich ist das eine Zeichenkette, also müssen wir sie zu einer Ganzzahl / einem Doppelten zwingen.
Giuseppe
quelle
quelle
lapply
, aber zumindest in diesem Fall kann ich eine kurze Variable zuweisenlapply
. Ich kann der Funktion scheinbar keine Variable zuweisenfunction
...Antworten:
JavaScript (ES6),
100989693 Byte2 Bytes dank @Neil gespart (und einen Edge-Case-Fehler in meinem Code behoben). 3 weitere Bytes dank @TomasLangkaas gespeichert.
Testfälle
quelle
a=>a.sort().map((_,n)=>a.filter((v,i)=>i-a.indexOf(v)==n&v!=a[i+1])).filter(a=>1/a[0]).reverse()
..filter(a=>1/a[0])
zu.filter(a=>''+a)
..filter(a=>a+a)
würde aber das extra Byte liefern.V ,
60, 54 BytesProbieren Sie es online!
Hexdump:
So sehr ich V auch liebe, ich bin mir ziemlich sicher, dass dies die schlechteste Sprache für diese Aufgabe ist. Besonders wenn man bedenkt, dass es keine Unterstützung für Listen und im Grunde keine Unterstützung für Zahlen gibt. Nur die Manipulation von Strings.
quelle
C #, 119 Bytes
Nur ein kurzer Versuch:
quelle
System.Func<int[],int[][]>F=
und das Nachziehen jedoch entfernen;
. Das ist nicht Teil der Byteanzahl für diese Art von Lambdas.R , 66 Bytes
Probieren Sie es online!
Wenn die Ganzzahlen in der Ausgabe möglicherweise im Zeichenfolgenformat vorliegen, können sie auf 48 Byte sinken (wie in der Antwort von @ Giuseppe angegeben).
Ungolfed:
quelle
as.double
ist um ein Byte kürzer und sollte genauso funktionieren wieas.integer
PowerShell,
77,70 ByteHinweis: Um sicherzustellen, dass diese Ergebnisse korrekt gruppiert sind (da visuell keine Abgrenzung zwischen den Inhalten der einzelnen Arrays besteht), möchten Sie möglicherweise
| write-host
das Ende der obigen Zeile anhängen .Danksagung
Dank an:
Bisherige
77 Bytes
quelle
,()
für die Gruppierung einschließen (da die Ausgabe nur als ein kontinuierliches Array angezeigt wurde). Das ist viel mehr Golf als mein ursprünglicher Versuch; Gute Arbeit!Groovy, 71 Bytes
Ich habe gerade erst von groupBy erfahren, als ich das erstellt habe. Ich wusste nicht, dass Sammeln nicht meine einzige Wahl ist.
quelle
Ruby , 62 Bytes
Probieren Sie es online!
Dafür muss es einen kürzeren Weg geben.
quelle