परिचय
ज्यामिति में, पीनो वक्र 1890 में Giuseppe Peano द्वारा खोजे जाने वाले स्पेस-फिलिंग कर्व का पहला उदाहरण है। पीनो कर्व एक सर्वेयर है, जो यूनिट स्क्वायर पर यूनिट अंतराल से निरंतर कार्य करता है, हालांकि यह इंजेक्शन नहीं है। Peano को जॉर्ज कैंटर के पहले के परिणाम से प्रेरित किया गया था कि इन दो सेटों में एक ही कार्डिनिटी है। इस उदाहरण के कारण, कुछ लेखक "पीनो कर्व" वाक्यांश का उपयोग किसी भी स्थान-भरने वाले वक्र के लिए अधिक सामान्यतः करने के लिए करते हैं।
चुनौती
कार्यक्रम एक इनपुट लेता है जो एक पूर्णांक होता है n
, और n
इस छवि के सबसे निचले हिस्से में दिखाए गए बग़ल 2 से शुरू होने वाले पीनो वक्र के वें पुनरावृत्ति का प्रतिनिधित्व करने वाले एक ड्राइंग को आउटपुट करता है :
इनपुट
n
पीनो वक्र की पुनरावृति संख्या देने वाला पूर्णांक । वैकल्पिक, अतिरिक्त इनपुट बोनस सेक्शन में वर्णित है।
उत्पादन
n
पीनो वक्र के वें पुनरावृत्ति का एक चित्र । ड्राइंग ASCII कला या "वास्तविक" ड्राइंग दोनों हो सकती है, जो भी सबसे आसान या कम हो।
नियम
- इनपुट और आउटपुट किसी भी सुविधाजनक प्रारूप में दिए जा सकते हैं (अपनी भाषा / समाधान के लिए सबसे उपयुक्त प्रारूप चुनें)।
- नकारात्मक मान या अमान्य इनपुट को संभालने की आवश्यकता नहीं है
- या तो एक पूर्ण कार्यक्रम या एक समारोह स्वीकार्य हैं।
- यदि संभव हो, तो कृपया ऑनलाइन परीक्षण वातावरण का लिंक शामिल करें ताकि अन्य लोग आपके कोड को आज़मा सकें!
- मानक खामियों को मना किया जाता है।
- यह कोड-गोल्फ है इसलिए सभी सामान्य गोल्फिंग नियम लागू होते हैं, और सबसे छोटा कोड (बाइट्स में) जीतता है।
बोनस
चूंकि यह पार्क में चलना नहीं चाहिए (कम से कम अधिकांश भाषाओं में मैं सोच सकता हूं), बोनस अंक निम्नलिखित के लिए प्रदान किए जाते हैं:
- -100 बाइट्स यदि आपका कोड पीनो कर्व्स के निर्माण का एक जिफ उत्पन्न करता है
n
। - -100 बाइट्स यदि आपका कोड किसी आयताकार आकार के लिए स्पेस-फिलिंग कर्व बनाता है (पीनो कर्व केवल स्क्वायर के लिए काम करता है, तो जाहिर है)। आप मान सकते हैं कि इनपुट फिर उस फॉर्म को लेता है
n l w
जहांn
पहले (पुनरावृति की संख्या) के समान अर्थ है, लेकिन जहांl
औरw
आयत की लंबाई और चौड़ाई बनती है जिसमें वक्र को आकर्षित करना है। यदिl == w
, यह नियमित पीनो वक्र बन जाता है।
नकारात्मक स्कोर की अनुमति है (लेकिन क्या वे संभव हैं ...)।
संपादित करें
कृपया अपने प्रोग्राम के आउटपुट को समाधान में शामिल करें n == 3 (l == w == 1)
।
n
यदि लिए इस्तेमाल किया जा l
और w
हैं भी आदानों ??????????? और पीनो वक्र एक विशेष मामला होगा - यह एकमात्र स्पेसफिलिंग वक्र नहीं है, इसलिए कुछ एल्गोरिदम को इसे विशेष रूप से बदलना पड़ सकता है