Powiązana sekwencja OEIS: A008867
Skrócona liczba trójkątna
Wspólną właściwością liczb trójkątnych jest to, że można je ułożyć w trójkąt. Na przykład weź 21 i ułóż w trójkąt o
s:
o oo ooo oooo ooooo oooooo
Zdefiniujmy „obcinanie:” wycinanie trójkątów o tym samym rozmiarze z każdego rogu. Jednym ze sposobów obcięcia 21 jest:
. . . ooo oooo . ooo. . . oo. .
(Trójkąty .
są wycięte z oryginału).
o
Pozostało 12 s, więc 12 to skrócona liczba trójkątów.
Zadanie
Twoim zadaniem jest napisanie programu lub funkcji (lub odpowiednika), która pobiera liczbę całkowitą i zwraca (lub używa dowolnej standardowej metody wyjściowej), czy liczba jest obciętym numerem trójkąta.
Zasady
- Brak standardowych luk.
- Dane wejściowe to nieujemna liczba całkowita.
- Długość cięcia nie może przekraczać połowy długości oryginalnego trójkąta (tzn. Cięcia nie mogą się pokrywać)
- Cięcie może mieć długość boku zero.
Przypadki testowe
Prawda:
0
1
3
6
7
10
12
15
18
19
Falsy:
2
4
5
8
9
11
13
14
16
17
20
Przypadki testowe dla wszystkich liczb całkowitych do 50: TIO Link
To jest golf golfowy , więc wygrane z najkrótszą liczbą bajtów w każdym języku wygrywają!