Sie erhalten die RGB-Werte einer Farbe. Ihre Aufgabe ist einfach: in der einfachsten Definition den Farbton zu berechnen.
Angenommen, die Kanäle mit dem höchsten, mittleren und niedrigsten Wert sind X, Y, Z (entweder rot, grün oder blau) und ihre Werte sind x, y, z. Der Farbton dieser Farbe ist (h (X) -h (Y)) * (1 + (xy) / (xz)) / 2 + h (Y), wobei:
h(red) = 0 (or 360 if one of X or Y is blue)
h(green) = 120
h(blue) = 240
Die Eingabe besteht aus 3 Ganzzahlen von 0 bis 255, die in einer konsistenten Reihenfolge nicht alle gleich sind. Die Ausgabe kann floaten oder ganze Zahlen sein, die entweder auf- oder abgerundet werden, was nicht konsistent sein muss. Wenn der ganzzahlige Teil der Ausgabe 0 oder 360 ist, können Sie einen von ihnen drucken.
Sie können keine integrierten Funktionen für Farbraumkonvertierungen aufrufen, einschließlich impliziter Konvertierungen, z. B. während Sie ein Bild bearbeiten.
Das ist Code-Golf. Kürzester Code gewinnt.
Beispiele
Input: 0 182 255
Output: 197 (or 198)
Input: 127 247 103
Output: 110
Input: 0 0 1
Output: 240
Input: 255 165 245
Output: 307 (or 306)
Bearbeiten
Sie müssen nicht die exakte Formel befolgen, sondern müssen nur das gleiche Ergebnis wie die obige Formel liefern. Ich möchte auch einige Antworten sehen, die die Formel selbst Golf spielen.