R , 84 77 bajtów
-7 bajtów dzięki mb7744
unique(lapply(x<-sort(table(scan()),T),function(y)as.double(names(x[x==y]))))
Czyta ze standardowego; zwraca listę z wektorami liczb całkowitych w porządku rosnącym. Jeśli moglibyśmy zwrócić ciągi zamiast ints, to mógłbym upuścić 11 bajtów (usuwając wywołanie do as.double
), ale to wszystko. table
Funkcja R wykonuje tutaj podnoszenie ciężarów, licząc wystąpienia każdego elementu swojego wkładu; następnie agreguje je według count ( names
). Oczywiście jest to ciąg, więc musimy zmusić go do liczby całkowitej / podwójnej.
Giuseppe
źródło
źródło
lapply
, ale przynajmniej w takim przypadku mogę przypisać krótką zmiennąlapply
. Nie mogę przypisać zmiennej do funkcjifunction
...Odpowiedzi:
JavaScript (ES6),
100989693 bajtówZaoszczędzono 2 bajty dzięki @Neil (plus naprawił błąd w krawędzi w moim kodzie). Zaoszczędź jeszcze 3 bajty dzięki @TomasLangkaas.
Przypadki testowe
źródło
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])
na.filter(a=>''+a)
..filter(a=>a+a)
zapewniłby dodatkowy bajt.V ,
60, 54 bajtówWypróbuj online!
Hexdump:
Mimo że uwielbiam V, jestem prawie pewien, że jest to najgorszy możliwy język dla tego zadania. Zwłaszcza biorąc pod uwagę, że nie obsługuje list i zasadniczo nie obsługuje liczb. Po prostu manipulacja ciągiem.
źródło
C #, 119 bajtów
Wystarczy szybkie dźgnięcie w to:
źródło
System.Func<int[],int[][]>F=
i końcowe;
. To nie jest część liczby bajtów dla tego rodzaju lambd.R , 66 bajtów
Wypróbuj online!
Jeśli na wyjściu liczby całkowite mogą mieć format ciągów, mogą spaść do 48 bajtów (jak wspomniano w odpowiedzi @ Giuseppe).
Nie golfowany:
źródło
as.double
jest krótszy o jeden bajt i powinien działać tak samo jakas.integer
PowerShell,
77,70 bajtówUwaga: Aby zobaczyć, że wyniki te są poprawnie pogrupowane (ponieważ wizualnie nie ma żadnych podziałów między zawartością każdej tablicy), możesz chcieć dołączyć
| write-host
na końcu powyższej linii.Podziękowanie
Dzięki:
Poprzedni
77 bajtów
źródło
,()
for grouping (ponieważ dane wyjściowe były wyświetlane jako jedna ciągła tablica). To jest znacznie bardziej golfowy niż moja pierwotna próba; świetna robota!Groovy, 71 bajtów
Właśnie dowiedziałem się o groupBy po utworzeniu tego. Nie wiedziałem, że zbieranie nie jest moim jedynym wyborem.
źródło
Rubin , 62 bajty
Wypróbuj online!
Musi istnieć krótszy sposób, aby to zrobić.
źródło