यह एक विचित्र रूपांतर है।
परिचय
हम सभी शॉर्ट कोड लिखते हैं, क्योंकि कुछ अस्पष्ट कारण हैं , लेकिन हम जो भी करते हैं, वह कम से कम 144 पिक्सेल / बाइट (12px फ़ॉन्ट के साथ) लेगा। लेकिन क्या होगा, अगर हम छवियों में अपने कोड को एनकोड करेंगे? आज तुम्हारा काम है।
चुनौती
आप कार्य अपने स्वयं के स्रोत कोड में पढ़ना चाहते हैं (गैर-उचित quines की अनुमति है, उदाहरण के लिए स्रोत फ़ाइल को सचमुच पढ़ते हैं), और ASCII के आधार पर पिक्सेल के लाल, हरे और नीले घटकों को सेट करके, उसमें से एक छवि बनाएं। चरित्र का मूल्य।
उदाहरण:
हमारे पास स्ट्रिंग है "हैलो वर्ल्ड!"
Hello world!
आइए इसे ASCII मानों में बदलें:
72 101 108 108 111 32 119 111 114 108 100 33
आरजीबी मानों को इसे मैप करें (यदि स्रोत कोड की लंबाई 3 से विभाज्य नहीं है, तो शेष वर्णों के रूप में 0s का उपयोग करें):
__________________________________________________
| R | G | B || R | G | B || R | G | B || R | G | B |
----------------------------------------------------
|72 |101|108||108|111|32 ||119|111|114||108|100|33 |
----------------------------------------------------
हम इसके बाद सबसे छोटे क्षेत्र के साथ छवि बनाते हैं। हमारे पास RGB मानों के 4 सेट हैं, इसलिए सबसे छोटी छवि 2 * 2 छवि होगी, जो शीर्ष बाएँ पिक्सेल से दाईं ओर जा रही है:
और हमें यह भयानक रूप से रंगीन छवि मिलती है (आकार बदल जाता है, इसलिए यह कम से कम दिखाई देता है, यह इस तथ्य को भी साबित करता है कि यह कितना छोटा हो सकता है)
नियम / अतिरिक्त जानकारी
- कोई इनपुट नहीं है
- आउटपुट एक अलग फ़ाइल के रूप में, या एक अलग विंडो में होना चाहिए।
- मल्टीबाइट पात्रों के लिए, चरित्र को 2 बाइट्स में विभाजित करें।
- स्रोत कोड कम से कम 1 बाइट लंबा होना चाहिए
- छवि को संभावित आकारों में से एक होना चाहिए, जो कि निकटतम चौड़ाई / ऊंचाई का अनुपात 1 है
- छवि पर पिक्सेल गणना बिल्कुल सीलिंग (बाइट काउंट / 3) होनी चाहिए, कोई अतिरिक्त पिक्सेल नहीं जोड़ा जाना चाहिए
स्कोरिंग
यह एक कोड-गोल्फ है , इसलिए बाइट्स में सबसे छोटा जवाब जीत जाता है।
height = N
और width = 1
? मुझे लगता है कि आपका मतलब चौड़ाई / ऊँचाई के करीब 1.