Diese Herausforderung ist eine Paste Cut'n aus Vergrößern ASCII - Art , sondern umgekehrt , mit PETSCII basierten Halbblock Zeichen:
string=" ▝▘▀▗▐▚▜▖▞▌▛▄▟▙█"
Das Ziel ist es also, durch 1/2
eingereichte ASCII -Kunst zu reduzieren . Zum Beispiel aus der Zeichenfolge:
OOOOOO OOOOOO OOOOOO OOOOOOO OOOOOO OOOOOO OO OOOOOOO
OO OO OO OO OO OO OO OO OO OO OO
OO OO OO OO OO OOOOO OO OOO OO OO OO OOOOO
OO OO OO OO OO OO OO OO OO OO OO OO
OOOOOO OOOOOO OOOOOO OOOOOOO OOOOOO OOOOOO OOOOOOO OO
Sie müssen rendern:
▟▀▀▘▟▀▀▙▐▛▀▙▐▛▀▀ ▗▛▀▀ ▟▀▀▙▐▌ ▐▛▀▀
█ █ █▐▌ █▐▛▀ ▐▌ ▜▌█ █▐▌ ▐▛▀
▝▀▀▘▝▀▀▘▝▀▀▘▝▀▀▀ ▀▀▀ ▝▀▀▘▝▀▀▀▝▘
(oder auch:
▗▛▀▀▗▛▀▜▖█▀▜▖█▀▀▘ ▟▀▀▘▗▛▀▜▖█ █▀▀▘
▐▌ ▐▌ ▐▌█ ▐▌█▀▘ █ ▝█▐▌ ▐▌█ █▀▘
▀▀▀ ▀▀▀ ▀▀▀ ▀▀▀▘ ▝▀▀▘ ▀▀▀ ▀▀▀▘▀
;-);
oder wo Rohrleitungen:
wget -O - /codegolf//q/19123/9424 |
sed -ne '/<pre><code>/,/<\/code><\/pre>/{//{/\//q};s/<pre><code>//;p}'
('l2v2l6v2'+ 'e1l1v3l2'+
'v3e1v7e1v7e1v7e1l2v6e1l4v5'+
'e1l6v4e1l8v3e1l7l3v2e1l9l3v1')
.replace(/[lve]\d/g,function
(c){return Array(-~c[1]).
join({l:' ',v:'Love'
,e:'\n'}[c[0
]])})
könnte geben:
▗▟█████▙▟█████▄
▜█████████████▛▘
▝▀███▙▛█████▀
▝▀▜██▀▘
Einige Beispiele:
Mit (ungefähr) gleichen Regeln:
- Eingabe von STDIN oder Datei
- Jedes eingereichte Zeichen muss dargestellt werden, nur Leerzeichen müssen leer bleiben .
- Dies ist auch Code-Golf , also gewinnt die niedrigste Punktzahl. Die Punktzahl wird berechnet als:
+1
von Zeichen, wird gezählt in Zeichen, nicht in Bytes dh:s=' ▝▘▀▗▐▚▜▖▞▌▛▄▟▙█'
Zählen 20 Zeichen, nicht 52 !!-10
zur Erklärung;+20
zur Verwendung eines externen Schriftwerkzeugs oder einer externen Bibliothek.
xterm -xrm 'XTerm*renderFont:false' &
öffne ich ein Konsolenfenster, in dem dies richtig angezeigt werden kann.