रंगों का वर्णन करने के लिए विभिन्न प्रणालियों के अलग-अलग तरीके हैं, भले ही वे सभी RGBA अंतरिक्ष में बोल रहे हों। सीएसएस से परिचित एक फ्रंट-एंड डेवलपर पसंद कर सकता है #RRGGBBAA। लेकिन Android डेवलपर्स पसंद कर सकते हैं #AARRGGBB। एएएस फ़ाइल प्रारूप को संभालते समय, #AABBGGRRइसकी आवश्यकता होती है। वह भी भ्रामक है। शायद हमें एक ऐसे कार्यक्रम की आवश्यकता है जो विभिन्न रंगों के स्वरूपों के बीच परिवर्तित हो सके।
इनपुट:
इनपुट में 3 भाग हैं:
- रंग बदलने के लिए (जैसे
#1459AC0F), एक तेज संकेत के साथ शुरू होने वाली स्ट्रिंग#जिसके बाद 8 हेक्स अंक होते हैं। - दिए गए रंग का प्रारूप (जैसे
#RRGGBBAA),#8 अक्षरों के साथ शुरू होने वाली एक स्ट्रिंग जो 4 अलग-अलग समूहों में गिरती है और प्रत्येक समूहRR/GG/BB/ में से एक हैAA। - में बदलने का प्रारूप।
आउटपुट:
- परिवर्तित प्रारूप में रंग का उत्पादन
परीक्षण के मामलों:
Color, OriginalFormat, TargetFormat -> Result
#12345678, #RRGGBBAA, #AARRGGBB -> #78123456
#1A2B3C4D, #RRGGBBAA, #AABBGGRR -> #4D3C2B1A
#DEADBEEF, #AARRGGBB, #GGBBAARR -> #BEEFDEAD
इनपुट / आउटपुट केस असंवेदनशील हैं। आप किसी भी स्वीकार्य तरीके से इनपुट / आउटपुट कर सकते हैं।
नियम:
यह प्रत्येक भाषा की जीत का कोड गोल्फ, सबसे छोटा (बाइट में) कोड है
AARRGGBBवास्तव में सबसे अच्छा रंग प्रारूप है। अगर कोई चीज 24 बिट की उम्मीद करती हैRRGGBBऔर आप इसे 32 बिटAARRGGBBदेते हैं, तो यह सिर्फ ऊपरी बाइट को नजरअंदाज कर सकता है और फिर भी काम कर सकता है।