Prawie Heronian równoboczny trójkąt jest trójkąt o długości całkowitej z postaci n-1
, n
i n+1
, a także ma powierzchnię całkowitą. Pierwsze kilka to:
3, 4, 5 -> 6
13, 14, 15 -> 84
51, 52, 53 -> 1170
Zadanie : Wygeneruj najkrótszy program, który generuje n
taki potrójny. (Wskazówka: jest to znana sekwencja).
Zwycięzca zostanie wybrany 2 maja 2014 r.
Odpowiedzi:
APL,
1514 postaciTo samo podejście, co rozwiązanie alephalpha , ale używa parametru floor zamiast terminu korygującego.
Dziękujemy algorytmshark za wskazanie, że operator dojeżdżający do pracy oszczędza jeden znak.
źródło
(⍳3)
zapisuje znak0 1 2
, i jestem prawie pewien, że możesz użyć dojazdy do pracy, aby zrobić to⎕*⍨2+√3
i uratować inny.⍳3
plonuje,1 2 3
a zatem jest o jeden char dłużej.Mathematica,
26, 22, 1618 znakówźródło
GolfScript (
2421 znaków)Pobiera dane wejściowe na standardowe wejście, podaje dane wyjściowe na standardowe wejście w formie
Demo online
Zauważ, że założyłem, że 0 elementem sekwencji jest
[1 2 3]
(z obszarem 0), co moim zdaniem jest zgodne z OEIS A003500 .Dzięki Howard za 3-znakową oszczędność.
źródło
(.).)]
jest o dwa znaki krótsze. Ponadto, jeśli zaczniesz z2 4
was może zastąpić\;
z;
zaoszczędzisz dodatkowy jeden.2 4
i traktowałem[3 4 5]
jako element 0, więc wstydzę się, że nie zauważyłem tego alternatywnego sposobu wykorzystania przesunięcia. Dzięki.GNU dc ,
3019 bajtówUżywa tej samej sztuczki co odpowiedź APL @ Howarda, więc należy obliczyć tylko jeden termin. Pobiera dane wejściowe dla n ze standardowego wejścia.
Wynik:
źródło
Python 77
Całkiem pełna implementacja w Pythonie
źródło
N
wartość? Twój program nie prosi o żadne dane wejściowe.Python 3, 83 znaki
Wykorzystuje to rozwiązanie rekurencyjne, wykorzystując fakt, że (cytat z Wikipedii ):
źródło
JavaScript (ECMAScript 6) - 52 znaki
Definiuje funkcję rekurencyjną,
f
która zwraca n- ty termin i funkcjęg
która zwraca tablicę zawierającą odpowiedni potrójny.JavaScript - 41 znaków
Oczekuje, że obliczony termin zostanie zapisany w zmiennej globalnej
x
i wyśle potrójnie do konsoli.źródło
CJam, 13 bajtów
Pierwsza wersja CJam jest o 10 dni starsza od tego wyzwania, ale nie wiem, czy wszystkie funkcje, z których korzystam, były wtedy obecne. Mimo to wyzwanie zostało oficjalnie zamknięte, więc ...
Sprawdź to tutaj.
Wyjaśnienie
źródło