( इस पोस्ट और चैट पर आगामी चर्चा के आधार पर - TIO के लिए डेनिस के लिए बहुत धन्यवाद!)
चुनौती
वर्तमान में TryItOnline साइट पर उपलब्ध भाषा चुनें , उदाहरण के लिए PowerShell । उस पृष्ठ पर उस भाषा में कोड लिखें, जो कोई इनपुट नहीं लेता है, जैसे कि जब रन बटन पर क्लिक किया जाता है, तो उस पृष्ठ पर आउटपुट ठीक उसी तरह होता है जैसे "प्लेन URL" फ़ील्ड में सेव / स्टोर करते समय होता है। इसके बजाय बटन पर क्लिक किया जाता है।
एक काल्पनिक उदाहरण के लिए, मान लीजिए कि aaaPowerShell में इसके समाधान के लिए कोड था। फिर, आउटपुट के कोड के रूप में रन के साथ क्लिक करने का परिणाम , जो कि "प्लेन URL" फ़ील्ड भी है जब सेव / स्टोर बटन पर क्लिक किया जाता है।aaahttps://tio.run/#powershellhttps://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
स्कोरिंग
परिणामी URL इस चुनौती के लिए अपने जमा है। विजेता बाइट्स में मापा जाने वाला सबसे छोटा URL है। ऊपर दिए गए उदाहरण के लिए, URL 44 बाइट्सhttps://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA में चुनौती प्रस्तुत करना है । इस चुनौती के बाकी हिस्सों को पूरा करने वाला सबसे छोटा URL चुनौती जीतता है और ब्राउनी पॉइंट्स (अंक नहीं भुनाए जाने योग्य) अर्जित करता है। यह देखते हुए कि एक अलग न्यूनतम संभव लंबाई है, अगर दो प्रस्तुतियाँ लंबाई में टाई होती हैं, तो पहले जमा करना जीत जाता है।
URL जनरेशन
यह रिपॉजिटरी में URL जेनरेशन एल्गोरिथम की शुरुआत है। आप देख सकते हैं कि मुख्य कोड क्षेत्र को कैसे लिया जाता है, किसी भी अतिरिक्त तत्वों को जोड़ा जाता है, स्ट्रिंग को विक्षेपित किया जाता है और Base64 परिवर्तित किया जाता है, और फिर पूर्व- ##निर्धारित किया जाता है, आदि मैं यहां पूर्ण विवरण में नहीं जाऊंगा; चुनौती का एक हिस्सा यह समझना और समझना है कि उक्त एल्गोरिथ्म में किसी भी संभावित विचित्रता का फायदा उठाने के लिए URL कैसे तैयार किए जाते हैं।
नियम / स्पष्टीकरण
- वास्तविक कोड को कोई इनपुट नहीं लेना चाहिए और आउटपुट के रूप में केवल quine-URL का उत्पादन करना चाहिए।
- यह केवल पाठ फ़ील्ड है कि जब URL में क्लिक करते हैं भर जाएगी मतलब हैCode,Header,Footerया इसी "संकलक फ्लैग" क्षेत्रों;InputऔरArgumentsक्षेत्रों मना कर रहे हैं और खाली / अप्रयुक्त रहना चाहिए। रन बटन पर क्लिक करने से केवलOutputफ़ील्ड को बदलना चाहिए । इस चुनौती के लिए,Debugसभी स्थितियों में क्षेत्र की अनदेखी की जाती है। - सामान्य क्वीन के नियम कोड पर संभव सीमा तक लागू होते हैं (उदाहरण के लिए, कोड अपने स्वयं के सोर्स कोड को नहीं पढ़ सकता है
.code.tio)। - कृपया यह विवरण शामिल करें कि आपके सबमिशन में कोड कैसे काम करता है।
- एक "ट्रिक" URL या शॉर्टकट बनाने के लिए TIO रिपॉजिटरी को Git पुल अनुरोध सबमिट करके "चीटी" क्वीन सबमिट करना या जैसी अनुमति नहीं है।
- इसी तरह, "ट्रिक" URL बनाने के लिए किसी विशेष भाषा को अपडेट करने के लिए पुल अनुरोध सबमिट करने की अनुमति नहीं है।
- कृपया डेनिस के सर्वर के लिए अच्छा हो और उन्हें इस चुनौती के लिए शोषण या प्रयास न करें।
https://tio.run/##a+aएक ऐसे प्रोग्राम का लिंक है जो आउटपुट करता है https://tio.run/##a+a, तो क्या यह लिंक द्वारा उत्पन्न लिंक के अनुसार भी कठिन saveStateहोगाhttps://tio.run/##a@a