Chamäleon Herausforderungen sind anscheinend eine schlechte Sache . Schade, Chamäleons sind wunderschöne Kreaturen. Zeit für Veränderung!
Wie wir alle wissen, haben viele Chamäleons eine bemerkenswerte Fähigkeit, sich in ihre Umgebung einzufügen, indem sie die Farbe ihrer Haut verändern. Welches ist auch das Ziel dieser Herausforderung.
Herausforderung
Stellen Sie sich ein Quadrat mit neun Pixeln vor. Acht Pixel sind die Umgebung. In der Mitte befindet sich das Chamäleon.
So was:
Das Chamäleon versucht auf natürliche Weise, sich in seine Umgebung einzufügen. Dies geschieht, indem die Farbe auf den Durchschnitt der umgebenden Pixel geändert wird. In diesem Fall würde das Chamäleon also seine Farbe in ändern .
Zielsetzung
Geben Sie unter Berücksichtigung der Farben der umliegenden Pixel die Farbe des Chamäleons aus.
Die Farbe des Chamäleons ist definiert als die Summe aller Rot-, Grün- und Blautöne in den Pixeln ÷ 8.
Eingang
Eine Reihe von Farbwerten für die acht umliegenden Pixel, beginnend oben links und im Uhrzeigersinn, wie folgt:
[[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>],[<red>,<green>,<blue>]]
Sie können Eingaben in einer anderen Form empfangen, sofern diese aus acht Dreifachen der Dezimalzahlen von 0 bis 255 bestehen.
Wenn Sie Eingaben in einer anderen Form erhalten, müssen die Zahlen entweder eine konsistente Länge haben oder ein nicht numerisches Trennzeichen dazwischen haben. Tripel müssen ein Trennzeichen haben, es sei denn, sie sind mit 0 bis 9 Ziffern aufgefüllt. (ZB 044200255044200255044200255044200255044200255044200255044200255044200255
ist gültig, so sind 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255 44 200 255
und 44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255$44?200?255
, ist aber 4420025544200255442002554420025544200255442002554420025544200255
nicht.)
Ausgabe
Ein Array / String / etc., das die Farben des mittleren Pixels (in Dezimalzahl) enthält, wie folgt:
[<red>,<green>,<blue>]
Für den Fall, dass Sie etwas anderes als ein Array ausgeben: Zahlen müssen entweder eine konsistente Länge haben oder ein nicht numerisches Trennzeichen dazwischen haben. (ZB 044200255
ist gültig, ist 44 200 255
aber 44200255
nicht gültig .)
Die Zahlen dürfen keine Nachkommastellen enthalten, sind also zB 44.0 200 255.0
ungültig.
Runden
Die Ausgabe muss auf die nächste Ganzzahl gerundet werden. (Die Hälften müssen aufgerundet werden.) Wenn beispielsweise die Summe aller Roten 1620 ist , müssen Sie 203
nicht 202
oder ausgeben 202.5
.
Beispiele
Die Bilder dienen nur zur Veranschaulichung. Das mittlere Pixel ist die Ausgabe, die umgebenden Pixel sind die Eingabe.
Eingang:
[[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200],[200,200,200]]
Ausgabe:
[200,200,200]
Eingang:
[[0,0,0],[255,255,255],[0,0,0],[255,255,255],[255,255,255],[0,0,0],[255,255,255],[0,0,0]]
Ausgabe:
[128,128,128]
Eingang:
[[0,200,200],[200,0,200],[200,200,0],[60,200,0],[200,0,200],[0,200,220],[2,200,0],[0,0,0]]
Ausgabe:
[83,125,103]
Eingang:
[[0,56,58],[65,0,200],[33,200,0],[60,33,0],[98,0,200],[0,28,220],[2,200,0],[99,0,5]]
Ausgabe:
[45,65,85]
Einsendungen können ein vollständiges Programm oder eine Funktion sein. Standard I / O und Schlupfloch Regeln gelten.