Biorąc pod uwagę n=m^2
, zwraca listę liczb całkowitych, które nie graniczą z m x m
siatką liczb całkowitych od 1 to n
.
Przykłady
n = 1 (m = 1)
Krata:
[1]
Powrót:
[]
n = 4 (m = 2)
Krata:
[1,2]
[3,4]
Powrót:
[]
n = 9 (m = 3)
Krata:
[1,2,3]
[4,5,6]
[7,8,9]
Powrót:
[5]
n = 16 (m = 4)
Krata:
[ 1, 2, 3, 4]
[ 5, 6, 7, 8]
[ 9,10,11,12]
[13,14,15,16]
Powrót:
[6,7,10,11]
Dla wyższych wartości m
, to odpowiedź robi wielką wizualizację.
Zasady:
- Możesz wziąć jeden
m
lubn
(gdzien = m*m
).- Jeśli biorąc w
n
was mogą mieć niezdefiniowane zachowanie tam gdzie nie istniejem
dlan
(np 15). n > 0
,m > 0
: Obie muszą być liczbami całkowitymi.
- Jeśli biorąc w
- Dane wyjściowe mogą być w postaci tablicy 1D / 2D, macierzy lub białych znaków
- Dane wyjściowe muszą być uporządkowane od najmniejszej do największej.
- Jeśli dane wyjściowe mają postać macierzy, oznacza to, że musi być tak, jak w siatce.
- To jest golf golfowy , wygrana o najniższej liczbie bajtów.
Odpowiedzi:
C, 50 bajtów
Wypróbuj online!
źródło
Oktawa , 31 bajtów
Zwraca macierz.
Wypróbuj online!
źródło
vec2mat
funkcją.Oktawa , 26 bajtów
Kod definiuje anonimową funkcję, która wprowadza
m
i wyprowadza (prawdopodobnie pusty) wektor kolumny.Wypróbuj online!
Wyjaśnienie
źródło
Galaretka , 8 bajtów
Monadyczny link pobierający
m
i zwracający listę list (wewnętrzne rzędy).Wypróbuj online!
W jaki sposób?
źródło
Pure Bash, 49
Nudna odpowiedź:
Wypróbuj online .
Lub interesująca odpowiedź dla 52:
Wypróbuj online .
źródło
Haskell , 31 bajtów
Wypróbuj online!
Wersja matematyczna:
: P
źródło
f(5)
powinno być7,8,9,12,13,14,17,18,19
R ,
444332 bajtówWypróbuj online!
Zwraca wektor.
źródło
print
funkcja dlamatrix
.m
wmatrix(1:m^2,m,m,T)
:matrix(1:m^2,m,,T)
Galaretka , 8 bajtów
Wypróbuj online!
źródło
m
jednego też może zrobić²s⁸ḊṖ$⁺€
. (Opublikowałem też innąm
alternatywną metodę.)⁸
:(Proton , 28 bajtów
Wypróbuj online!
Przyjmuje m jako dane wejściowe.
W jaki sposób?
Filtruje liczby całkowite w [k, k 2 -k), które po podzieleniu przez k dają resztę wyższą niż 1 . Zapewnia to obcinanie obu końców, ponieważ pierwszy daje 0, a ostatni 1 . Gwarantowane jest również zwrócenie wyższej wartości dla dowolnej poprawnej liczby całkowitej, ponieważ są one następujące po sobie.
źródło
Wolfram Language (Mathematica) , 31 bajtów
Wypróbuj online!
źródło
Narzędzia Bash + GNU, 35
Wypróbuj online .
źródło
05AB1E , 9 bajtów
Wypróbuj online!
źródło
LItä¦¨ε¦¨
jest w porządku, wyjściem może być tablica 2D.Python 2 , 44 bajty
Wypróbuj online!
Obiecuję, że dziś jest to moja ostatnia odpowiedź (na to wyzwanie). Przyjmuje m jako dane wejściowe.
źródło
Rubinowy , 32 bajty
Pobiera
m
, zwraca tablicę jednowymiarową.Wypróbuj online!
źródło
MATL , 8 bajtów
Dane wejściowe to
m
. Dane wyjściowe to liczby w porządku rosnącym.Wypróbuj online!
Wyjaśnienie
Rozważ dane wejściowe
4
jako przykład.źródło
APL (Dyalog Classic) , 14 bajtów
Wypróbuj online!
źródło
Partia, 85 bajtów
Nie mogę łatwo zapętlać od
2
do,m-1
więc zapętlam od3
dom
i dostosowuję obliczenia.źródło
Julia 0.6 , 36 bajtów
Wypróbuj online!
źródło
Pari / GP , 26 bajtów
Wypróbuj online!
źródło
Japt, 12 bajtów
Tak długo grałem w ekstrakcję elementów, że zabrakło mi czasu na grę w golfa. Dopiero teraz zauważam, że
n
zamiast tego możemy wziąć jako dane wejściowe, więc mogę coś tam zapisać. Do ponownego odwiedzenia ...Spróbuj
Wyjaśnienie
źródło
J ,
2319 bajtów-4 bajty dzięki FrownyFrog!
Wypróbuj online!
Mój oryginalny olution:
J , 23 bajty
Pobiera n jako dane wejściowe, zwraca macierz
Jak to działa
1+i.
- generuje listę 1..n-@%:
- znajduje pierwiastek kwadratowy z n i neguje go (m)]\
- tworzy tabelę (macierz) mxm z listy^:2
- wykonaj dwa razy następujące czynności:|:@}:@}.
- upuść pierwszy rząd, następnie upuść ostatni rząd, a następnie transponuj[:
- zakryj widelecWypróbuj online!
źródło
1}:@}.-@%:}.@}:\1+i.
1 1}:@}.-@%:}:\1+i.
}.
Łuska , 9 bajtów
Wypróbuj online!
Wyjaśnienie
źródło
Japt , 14 bajtów
Pobiera
m
jako dane wejścioweWyjaśnienie
Wypróbuj online!
Rozwiązanie, które zajmuje
n
również 14 bajtów:Wypróbuj online!
źródło
TI-BASIC,
4443 bajty (tokenizowane)Wersja do odczytu:
Niestety konieczne było ręczne drukowanie pustych list, ponieważ TI-BASIC normalnie na to nie pozwala. Jeśli
m
podano więcej niż dwa, kod można by zmniejszyć do zaledwie 29 bajtów .źródło
Pyth , 10 bajtów
Wypróbuj tutaj!
Przyjmuje m jako dane wejściowe.
źródło
Czerwony ,
6362 bajtówWypróbuj online!
Jest to czerwony port całkowicie ludzkiego rozwiązania Haskell / Mr. Xcoder Python 2
źródło
Czysty , 45 bajtów
Wypróbuj online!
To jest po prostu całkowicie ludzka odpowiedź Haskella, ale w Czystości.
źródło
Pyt , 13 bajtów
Port galaretki Jonathana Allana
Wyjaśnienie:
Wypróbuj online!
źródło
Python, 111 bajtów
źródło
Java 8 ,
241183170162160132122 bajtówWypróbuj online!
Java sprawia, że jest bardzo trudny (dużo bajtów), gdy trzeba stworzyć tablicę nieco „nieznanego” rozmiaru.
źródło
Groovy
się w skrócie Java.int
, zmieniające||
się|
i usuwanie wsporniki pojedynczej linii, jeśli ciało.