To jest moje pierwsze wyzwanie na tej stronie.
Wyzwanie polega na przyjęciu wejściowej liczby całkowitej , która będzie dodatnia, i wydrukowaniu, w porządku rosnącym ( do , w tym n ), wyniku (gdzie jest bieżącą liczbą całkowitą). i ( n - i ) i
Przykład
Biorąc pod uwagę wejście 5, program wydrukuje:
1
8
9
4
1
to 1, a
to 8, a
to 9, a
to 4 i
to 1 i
Wejście i wyjście
Dane wejściowe będą miały postać dodatniej liczby całkowitej. Wyjście będzie listą liczb, oddzielonych przecinkami lub nowymi wierszami.
To jest golf golfowy , więc wygrywa najkrótszy kod.
code-golf
math
arithmetic
Wcielenie ignorancji
źródło
źródło
Odpowiedzi:
APL (Dyalog Unicode) ,
85 bajtówWypróbuj online!
Anonimowa funkcja ukrytego przedrostka. Testy TIO dla zakresu [1..10].
Dzięki @lirtosiast za 3 bajty.
W jaki sposób:
źródło
⍳*⊢-⍳
jest 5 bajtów, używając⎕IO←1
.Haskell, 23 bajty
Wypróbuj online!
Alternatywna wersja, także 23 bajty:
źródło
Japt, 5 bajtów
Spróbuj
źródło
Perl 6 , 19 bajtów
Wypróbuj online!
Anonimowy blok kodu, który pobiera liczbę i zwraca listę. Zip wykłada zakres
1 to input
i zasięginput-1 to 0
źródło
Aheui (esotop) ,
193164 bajtów (56 znaków)Wypróbuj online!
Wypróbuj na AVIS ( koreański ); po prostu skopiuj i wklej kod powyżej, naciśnij przycisk Start, wprowadź liczbę, zobacz, jak się porusza. Aby wyświetlić dane wyjściowe, naciśnij ikonę > _ po lewej stronie.
Nie jest dużo golfa, ale daję temu szansę.
źródło
Pyth , 5 bajtów
Wypróbuj online!
Optymalnie zakodowane byłoby 4.106 bajtów.
źródło
J , 10 bajtów
Wypróbuj online!
Jeśli naprawdę musimy oddzielić liczby nowym znakiem:
J , 13 bajtów
Wypróbuj online!
źródło
Galaretka , 5 bajtów
Wypróbuj online!
źródło
PHP, 32 bajty
Uruchom jako potok z
-nR
lub spróbuj online .źródło
Oktawa , 18 bajtów
Wypróbuj online!
Dzięki Luis Mendo , użycie zmiennej wewnętrznej oszczędza 3 bajty.
źródło
Galaretka , 4 bajty
Wypróbuj online!
źródło
Wolfram Language (Mathematica) ,
242018 bajtówWypróbuj online!
-4 dzięki @lirtosiast.
źródło
MathGolf , 6 bajtów
Wypróbuj online!
źródło
Python 2 , 40 bajtów
Wypróbuj online!
Python 2 , 41 bajtów
Wypróbuj online!
źródło
Rubinowy , 27 bajtów
Wypróbuj online!
źródło
Siatkówka , 35 bajtów
Wypróbuj online! Wyjaśnienie:
Przekształć dane wejściowe w jednoargumentowe.
Dopasuj każdą pozycję. To ustawia kilka zmiennych zastępczych.
$`
staje się lewą stroną meczu;$>`
modyfikuje to, aby było lewą i pasowało;$.>`
modyfikuje to, aby przyjąć długość, tj. bieżący indeks.$'
tymczasem jest prawo do dopasowania, podobnie$.'
jak długość, tj. bieżący wykładnik.Utwórz ciąg
$.(
plus$.'
powtórzenia$.>`*
plus_
. Na przykład dla indeksu 2 na oryginalnym wejściu 5$.'
wynosi 3, a$.>`
2, więc wynikowy ciąg to$.(2*2*2*_
. Jest to dogodnie wyrażenie zastępujące siatkówkę, które oblicza 2³. Każdy ciąg jest wyprowadzany w osobnym wierszu.Dla każdej linii wygenerowanej przez poprzedni etap poprzedź linię
.+
, zamieniając ją w etap zastępowania, i oceń ten etap, obliczając w ten sposób wyrażenie.źródło
QBasic,
3533 bajtówDziękuję @Neil za 2 bajty!
Nieco rozszerzona wersja na REPL.IT, ponieważ interpreter nie jest w pełni zgodny ze specyfikacją.
Wynik
źródło
b^(a-b)
dlab=1..a
)F # (.NET Core) , 42 bajty
Wypróbuj online!
źródło
JavaScript (Node.js) ,
3332 bajtyWypróbuj online!
-3 bajty z kredytami na @Shaggy i -1 bajt na @ l4m2!
JavaScript (Node.js) , 36 bajtów
Wypróbuj online!
JavaScript (Node.js) , 37 bajtów
Wypróbuj online!
źródło
C # (interaktywny kompilator Visual C #) , 46 bajtów
Wypróbuj online!
źródło
MATL , 5 bajtów
Wypróbuj online!
Wyjaśnienie
Rozważ dane wejściowe
5
jako przykład.źródło
Java, 59 bajtów
źródło
a
, na co nie zezwalamy.n->{for(int i=0;i++<n;)System.out.println(Math.pow(i,n-i));}
60 bajtów (kod i przypadki testowe w linku)Czysty , 37 bajtów
Wypróbuj online!
Definiuje
$ :: Int -> [Int]
przyjmowanie liczby całkowitej i zwracanie listy wyników.źródło
R , 34 bajty
Wypróbuj online!
źródło
05AB1E , 5 bajtów
Port @lirtosiast „s Jelly odpowiedź .
Wypróbuj online.
Wyjaśnienie:
źródło
Lua ,
4341 bajtów-2 bajty dzięki @Shaggy
Wypróbuj online!
źródło
+0
; wydaje się działać bez tego.R, 22 bajty
Dość oczywiste; należy zauważyć, że
:
operator ma wyższą pozycję niż-
operator, dlategon:1-1
jest krótszy niż(n-1):0
Jeśli wolno nam zacząć od zera, możemy stracić dwa bajty,
(0:n)^(n:0)
unikając potrzeby -1.źródło
Węgiel , 9 bajtów
Wypróbuj online! Link jest do pełnej wersji kodu. Wyjaśnienie:
źródło
C # (interaktywny kompilator Visual C #) , 55 bajtów
Wypróbuj online!
źródło
Perl 5
-n
, 21 bajtówWypróbuj online!
źródło