कार्य
कार्य एक प्रोग्राम लिखना है जो एक सुसंगत लेकिन अन्यथा मनमाने ढंग से सकारात्मक पूर्णांक आउटपुट करता है (इसलिए सख्ती से 0 से अधिक)। यहाँ पकड़ है: जब स्रोत दोहराया है बार (कोड जोड़ दिया जाता है / concatenated में ही करने के लिए), कार्यक्रम एक होना चाहिए outputting की संभावना एन ⋅ एक्स और के शेष संभावना एन - 1आउटपुटका एन अपरिवर्तित होना।
उदाहरण
मान लें कि आपका प्रारंभिक स्रोत है XYZ
और पूर्णांक बनाता है 3
। फिर:
के लिए :
XYZXYZ
चाहिए उत्पादन की एक संभावना के साथ (समय की 50%) औरकी एक संभावना के साथसाथ ही 2 (समय का 50%)।के लिए :
XYZXYZXYZ
चाहिए उत्पादन की एक संभावना के साथ (समय की 66.666%) औरकी एक संभावना के साथ (33.333% समय)के लिए :
XYZXYZXYZXYZ
चाहिए उत्पादन की एक संभावना के साथ (समय की 75%) और के एक संभावना के साथ (समय का 25%)
और इसी तरह....
नियम
आपको एक पूर्ण कार्यक्रम बनाना चाहिए । आउटपुट को STDOUT पर प्रिंट करना होगा।
आपका कार्यक्रम, सिद्धांत में, ऊपर बताई गई संभावनाओं के साथ प्रत्येक संभावित मूल्य का उत्पादन करना चाहिए, लेकिन यादृच्छिक के कार्यान्वयन के कारण इससे थोड़ा विचलन ठीक है ( बशर्ते कि कार्यान्वयन एक अलग वितरण का नहीं है - आप एक का उपयोग नहीं कर सकते हैं बाइट्स को बचाने के लिए सामान्य वितरण ) ।
कार्यक्रम को (फिर, सिद्धांत रूप में) एक अनियंत्रित रूप से बड़े मूल्य के लिए काम करना चाहिए , लेकिन परिशुद्धता के कारण तकनीकी सीमाएं बड़े लिए ठीक हैं ।
आउटपुट बेस 10 में होना चाहिए (किसी अन्य आधार पर या वैज्ञानिक संकेतन के साथ आउटपुट निषिद्ध है)। ट्रेलिंग / अग्रणी स्थान और अग्रणी शून्य की अनुमति है।
प्रारंभिक स्रोत (निश्चित रूप से) कम से कम 1 बाइट लंबा होना चाहिए। आप अपने स्रोत की प्रतियों के बीच एक नई पंक्ति नहीं मान सकते हैं । कार्यक्रम को इनपुट नहीं लेना चाहिए (या अप्रयुक्त, खाली इनपुट) होना चाहिए।
यह कोड-गोल्फ है , इसलिए उत्तर का स्कोर बाइट्स में (मूल) स्रोत की लंबाई है, जिसमें कम स्कोर बेहतर है।
नोट: यह चुनौती एक (बहुत) की कठिन संस्करण है इस एक ।