APL ( 171 166 162 Zeichen, alle Boni: 999 - 171 166 162 + 20 + 20 + 200 = 1068 1073 1077)
Dies ist das längste Golf-APL-Programm, das ich bisher geschrieben habe. Dies mag leicht betrügen, aber es gibt nichts in der Frage, was dies tatsächlich verbietet. Ich setze alle Knoten auf eine vertikale Linie und zeichne den Graphen als Bogendiagramm. Es ist offensichtlich immer noch eine Grafik.
Ich habe noch ein paar Stunden gebraucht.
V←' '⍴⍨99,⍨2×⍴P←∪,C←(2,⍨2÷⍨⍴G)⍴G←G/⍨⎕A∊⍨G←⍞⋄V[2×⍳⍴P;50]←P⋄M←1⋄G←⍴D←{⍵[⍋⍵]}¨↓P⍳C⋄{V[A B←⍵;L←50+M×⌽⍳G]∘←'-'⋄V[A+⍳B-A;⊃L]∘←'|'⋄V[⍵;⊃L]∘←'+'⋄M×←¯1⋄G-←1}¨2×D[⍒|-/↑D]⋄V
Die Knoten müssen aus einfachen Großbuchstaben bestehen, sodass maximal 26 Knoten unterstützt werden. Es kann gekreuzte Linien verarbeiten, und jeder Knoten kann so viele Verbindungen haben, wie das Display verarbeiten kann.
Beispielausgabe:
A,B C,A C,D
+-A--+
| |
+-B |
|
C+-+
|
D+
A,B C,A B,A A,D A,E F,G C,G
+--A-+-+-+
| | | |
| B-+ | |
| | |
+-+--C | |
| | |
| D---+ |
| |
| E-----+
|
| +F
| |
+---+G
T,H E,Q U,I C,K B,R O,W N,F O,X J,U M,P S,O V,E R,T H,E L,A Z,Y D,O G,S
+---+----------T
| |
| +-------+--H
| |
| +--E---------+-------+
| | |
| Q---------+ |
| |
| +--------U---------------+ |
| | | |
| +--------I | |
| | |
| C-------+ | |
| | | |
| K-------+ | |
| | |
| +------B | |
| | | |
+-------+------R | |
| |
+----------------O-----+-----+-+ | |
| | | | | |
| W-----+ | | | |
| | | | |
| +----N | | | |
| | | | | |
| +----F | | | |
| | | | |
| X-----------+ | | |
| | | |
| J-------------|-+ |
| | |
| M---+ | |
| | | |
| P---+ | |
| | |
| +------------S-------------+ |
| | |
| | V-----------------+
| |
| | L-+
| | |
| | A-+
| |
| | +Z
| | |
| | +Y
| |
+---|------------D
|
+------------G
code-golf
,code-challenge
Oder was? Und was ist / sind das Gewinnkriterium / die Gewinnkriterien?