रेडियम के एक छोटे से नमूने, एक इलेक्ट्रोक्यूटेड व्हेल और तीन गमी भालू से जुड़े एक बहुत ही असामान्य दुर्घटना में, प्रबंधन के स्रोत कोड में से कुछ को उत्परिवर्तित किया गया है। थोड़ा प्रबंधन के मालिक को पता है, यह वास्तव में पुलिस © जो जिम्मेदार था, प्रबंधन की "बुराई" योजनाओं को विफल करने के प्रयास में था। तो मूल कोड को पुनः प्राप्त करने के प्रयास में रॉबर्स® को काम पर रखा गया है, क्योंकि कभी-कभी बुराई करना पसंद नहीं करता है?
नोट: यह चुनौती स्रोत कोड को खोलना से बहुत अधिक प्रेरित थी ।
विवरण
यह एक पुलिस और लुटेरों की चुनौती है।
- पुलिस एक कार्यक्रम (उत्परिवर्तित कोड) कि प्रदर्शन टास्क # 1 (और यह भी एक प्रोग्राम है जो प्रदर्शन टास्क # 2, लेकिन गुप्त रखा जाता है लिखना) लिखेगा।
- लुटेरों "उत्परिवर्तन" को बदलने का प्रयास और कोड है कि प्रदर्शन टास्क # 2 में इस मूल कोड बदल जाएगा।
इस चुनौती में, टास्क # 1 वें प्राइम नंबर को आउटपुटn
करने के लिए होगा , और टास्क # 2 को वें फाइबोनैचि नंबर (जो कि किसी भी तरह से बुरा है, कॉप्स के अनुसार © वैसे भी) के आउटपुट केn
लिए होगा । फिबोनाची अनुक्रम को ( n=1
→ 1
; n=2
→ 1
; n=3
→ 2
; ...) के रूप में परिभाषित किया गया है, और अभाज्य संख्याओं को ( n=1
→ 2
; n=2
→ 3
; n=3
→ 5
; ...) के रूप में परिभाषित किया गया है ।
पुलिस का लक्ष्य टास्क # 1 और टास्क # 2 को पूरा करने वाले कार्यक्रमों के बीच अंतर को कम करना है, जबकि लुटेरों को टास्क # 2 को पूरा करने वाले कोड को फिर से बनाने से रोकना है।
कॉप नियम
कॉप्स दो प्रोग्राम लिखेंगे (एक जो टास्क # 1 को पूरा करता है, और एक जो टास्क # 2 को पूरा करता है), और निम्नलिखित जानकारी को निम्नलिखित में से एक बना देगा:
- पहला कार्यक्रम (कि आउटपुट
n
वें अभाज्य संख्या) - Levenshtein संपादित दूरी पहला कार्यक्रम और दूसरे कार्यक्रम के बीच
- प्रोग्रामिंग भाषा है कि दोनों कार्यक्रमों में लिखे गए हैं (दोनों कार्यक्रमों के लिए एक ही भाषा होना चाहिए)
निम्नलिखित प्रतिबंध दोनों कार्यक्रमों पर लागू होते हैं:
- वे लंबाई या उससे कम में 128 वर्ण होने चाहिए।
- उन्हें केवल प्रिंट करने योग्य एएससीआईआई (प्लस नईलाइन्स, जो भी अनुमत हैं) का उपयोग करना होगा।
- उन्हें चलाने के लिए 10 सेकंड से कम समय लेना चाहिए
n=45
, और उन्हें किसी भी के लिए सही आउटपुट का उत्पादन करने की आवश्यकता नहीं हैn>45
। - उन्हें किसी हैशिंग या क्रिप्टोग्राफिक कार्यों का उपयोग नहीं करना चाहिए।
डाकू नियम
लुटेरा पुलिस द्वारा निर्दिष्ट एडिट दूरी में टास्क # 2 (जो पुलिस द्वारा लिखित मूल कार्यक्रम नहीं है) को पूरा करने वाले प्रोग्राम में पुलिस के कार्यक्रम (जो टास्क # 1 पूरा करता है) को बदलने का प्रयास करेगा।
पहले से क्रैक किए गए सबमिशन को फिर से क्रैक नहीं किया जा सकता है (केवल एक ऐसा पहला लुटेरा जो क्रैक जमा करता है, उसे क्रेडिट मिल जाता है)।
सबमिशन क्रैक करने के बाद, कृपया निम्नलिखित करें:
- एक जवाब पोस्ट करने के लिए इस चुनौती के साथ प्रश्न (लिंक) , भाषा, अपने समाधान है, और मूल जवाब के लिए एक लिंक प्रदान करते हैं।
- पाठ "क्रैक" के साथ एक टिप्पणी छोड़ें जो आपके पोस्ट किए गए उत्तर के लिए लिंक करता है।
- पुलिस के उत्तर को संपादित करें यदि आपके पास विशेषाधिकारों का संपादन है (यदि आप नहीं करते हैं, तो या तो तब तक प्रतीक्षा करें जब तक कि आवश्यक विशेषाधिकारों वाला कोई अन्य व्यक्ति आपके लिए ऐसा न करे या संपादन का सुझाव दें)।
स्कोरिंग
यदि एक पुलिस का कार्यक्रम 1 सप्ताह के लिए अनियंत्रित रहता है, तो पुलिस टास्क # 2 (निर्दिष्ट एडिट दूरी में) को पूरा करने वाले मूल कोड को पोस्ट कर सकती है, और तब से प्रस्तुत किया जाता है, जिसे "सुरक्षित माना जाता है।" सुरक्षित सबमिशन जिसमें सबसे छोटी एडिट डिस्टेंस है, वह जीत जाएगा। एक टाई की स्थिति में, सबसे छोटा प्रोग्राम (मूल जो टास्क # 1 को पूरा करता है) जीतता है। यदि दो प्रस्तुतियाँ अभी भी बंधी हुई हैं, तो पहले वाला पोस्ट जीत जाता है।
यदि कोई लुटेरा पुलिस के सबमिशन को सफलतापूर्वक क्रैक करता है, तो डकैत का स्कोर उस सबमिशन की एडिट दूरी से बढ़ जाता है। उदाहरण के लिए, एक डाकू जो 3 की संपादित दूरी के साथ एक सबमिशन क्रैक करता है और 5 की दूरी के साथ 8 अंक अर्जित करता है। उच्चतम स्कोर के साथ डाकू जीतता है। टाई होने की स्थिति में, स्कोर हासिल करने वाला डाकू पहले जीत जाता है।