Eine Herausforderung mit einfachen Regeln, aber nicht trivialen Algorithmen. :-)
Aufgabe
Nehmen Sie die Eingabe in Form von durch Leerzeichen getrennten ganzen Zahlen vor:
N A B S
Wobei N die Seitenlänge einer 2D-Quadratmatrix ist, die mit eindeutigen Zahlen (Ganzzahlen) zwischen A und B einschließlich gefüllt ist . Für jede Zeile und Spalte in dieser Matrix ist die Summe immer dieselbe: S. (Mit anderen Worten, die Matrix ist ein halbmagisches Quadrat).
Hinweis:
Alle Zahlen sind positiv. Ausnahme ist A, das 0 sein kann.
Beispiele
Zum
3 1 10000 2015
eine gültige lösung wäre
Zum
8 1 300 500
eine gültige lösung wäre
Ausgabe
Die Ausgabe sollte eine ASCII-Tabelle sein. Beispiel für das erste Beispiel oben:
384 159 1472
1174 499 342
457 1357 201
Rechtsbündige Ganzzahlen, die mit Leerzeichen aufgefüllt sind. Die Breite jeder Spalte ist die Breite der größten Ganzzahl in dieser Spalte.
Wertung
Das ist Code-Golf , also gewinnt der kürzeste Code in Bytes. Es gelten Standard-Regelungslücken (insbesondere bei integrierten Funktionen zur Lösung dieses Problems). Sie müssen sich nicht um falsche oder anderweitig unmögliche Eingaben (einschließlich negativer Zahlen) kümmern. Bitte geben Sie in Ihrer Antwort (obligatorisch) ein Beispiel für das zweite Beispiel oben an.
A
, B
, und N
kann negativ sein?