Tagi: projektowanie Miejmy cyfrą mozaika , Print / Output L-Phabet . Wstaw tutaj piaskownicę
Biorąc pod uwagę 2 dane C = columns and rows, S = starting point
wyjściowe, macierz wygląda następująco:
Input 4, 3
1 2 3 0
2 2 3 0
3 3 3 0
0 0 0 0
Wyjaśnienie
Dany C = 4, S = 3
1) Utwórz C x C
macierz wypełnioną0
4 columns
4 _____|____
| |
r --0 0 0 0
o | 0 0 0 0
w | 0 0 0 0
s --0 0 0 0
2) Uzupełnij S
wartości w wierszu i kolumnie S
, a następnie odejmij 1 od S
i powtarzaj do S = 0
. Ta sprawaS = 3
Column 3
S = 3 |
v
0 0 3 0
0 0 3 0
Row 3-->3 3 3 0
0 0 0 0
Column 2
S = 2 |
v
0 2 3 0
Row 2-->2 2 3 0
3 3 3 0
0 0 0 0
Column 1
S=1 |
v
Row 1-->1 2 3 0
2 2 3 0
3 3 3 0
0 0 0 0
Final Result
1 2 3 0
2 2 3 0
3 3 3 0
0 0 0 0
Zasady
- Założyć
C >= S >= 0
- Wyjściem może być macierz, lista list, tablica (1-wymiarowa lub 2-wymiarowa) itp.
- Możesz przyjmować dane wejściowe za pomocą dowolnego domyślnego formatu we / wy
- Twój program, funkcja itp. Może być indeksowany 1 lub 0. Podaj, który z nich jest.
Uwaga Wyjaśnienie to indeksowanie 1
Kryteria wygrywania w golfa kodowego
Oktawa , 31 bajtów
Anonimowa funkcja zwracająca macierz. Wykorzystuje indeksowanie 1.
Wypróbuj online!
źródło
Haskell ,
47 lat45 bajtów-2 bajty poprzez zmianę formatu wyjściowego na listę jednowymiarową.
Wypróbuj online!
Wyjaśnienie
Termin
x >>= (<$> x) . max
ten jest wersją gry w golfaco ocenia na
[1,2,3,4..c, 2,2,3,4..c, 3,3,3,4..c, ..., c,c,c,c..c]
. Teraz musimy wymusić wartości0
tylko wtedy, gdy przekroczą to,s
co osiągniemysum [ j | j <= s]
.źródło
APL (Dyalog Classic), 12 bajtów
Wypróbuj online!
Wszelkie wskazówki dotyczące przekształcania tego w pociąg są mile widziane.
źródło
APL (Dyalog) , 12 bajtów
Wypróbuj online!
źródło
o×⎕≥o←∘.⌈⍨⍳
byłoby dozwolone, czy też musiałbyś przypisać to do funkcji, aby to się liczyło?JavaScript (ES6), 61 bajtów
Pobiera dane wejściowe w składni curry
(c)(s)
, gdzie s jest indeksowane 1. Zwraca tablicę jednowymiarową.Wypróbuj online!
źródło
Galaretka , 6 bajtów
Pełny program * przyjmujący liczby całkowite
C
iS
które drukuje reprezentacji Jelly wykazu list liczb całkowitych, jak określono (1 indeksowane).Wypróbuj online!(formatuje wynik diady jako siatkę liczb dla łatwiejszego czytania)
W jaki sposób?
* Powodem jest to pełny program jest do korzystania z dostępu do argumentów programu
⁴
. Jako diadadowy link ten kod polegałby na tym, jak wywoływany jest program, który go używa.Wielokrotnego użytku ogniwo dynastyczne w 8 bajtach (biorąc S po lewej stronie i C po prawej): Wielokrotnego użytku ogniwo dynastyczne w 8 bajtach (biorąc C po lewej i S po prawej):
RiⱮⱮ»þ`}
RiⱮⱮ⁹»þ¤
źródło
Java 10, 88 bajtów
Wypróbuj online.
Wyjaśnienie:
źródło
PHP , 92 bajty
To jest „indeksowanie 1”.
Aby uruchomić:
Przykład:
Lub wypróbuj online!
źródło
Stax , 10 bajtów
Uruchom i debuguj
Jak to działa:
źródło
Excel VBA, 65 bajtów
Funkcja bezpośredniego okna, która pobiera dane wejściowe
[A1:B1]
i wyjściowe z tego zakresu[C1].Resize([A1],[A1])
.Wejście wyjście
Dane wejściowe mieszczą się w zakresie
[A1:B1]
źródło
J , 18 bajtów
Znacznie dłużej niż oba rozwiązania APL.
Wypróbuj online!
źródło
MATLAB, 58 bajtów (dzięki anonimowemu użytkownikowi)
Wystarczy wypełnić elementy macierzy odpowiednią liczbą, uruchomić pętlę. Być może można być mądrzejszym
arrayfun
źródło
zeros(c)
która skrywa niektóre bajty. Również widziałaś ten Octave odpowiedź, myślę, że to działa w Matlab też?max()
trzeba wziąć argumenty sam kształtfunction o=f(c,s);o=zeros(c);for j=s:-1:1;o(1:s,1:s)=j;end
.o(1:j,1:j)=j
C # (.NET Core) , 85 bajtów
Wypróbuj online!
Port odpowiedzi Kevina Cruijssena , który był znacznie lepszy niż mój.
źródło
Python 2 , 58 bajtów
Wypróbuj online!
Wysyła listę 1D długości
C*C
.źródło
Węgiel drzewny , 19 bajtów
Wypróbuj online! Link jest do pełnej wersji kodu. 3 bajty używane do konwersji danych wyjściowych na dziesiętne i ładnego sformatowania. Wyjaśnienie:
źródło
Czysty , 67 bajtów
Wypróbuj online!
Definiuje
$ :: Int Int -> [[Int]]
udzielanie odpowiedzi za pomocą indeksowania 1.źródło
Perl 6 , 37 bajtów
Wypróbuj online!
Zwraca macierz jako tablicę jednowymiarową.
źródło
Matematyka 44 bajty
źródło