हम एक मिला है जोड़ी की चुनौतियों ऊलाम सर्पिल के बारे में। लेकिन इतना ही काफी नहीं है।
इस चुनौती में हम एक त्रिकोणीय उलम सर्पिल (सामान्य, वर्ग उलम सर्पिल के विपरीत) की साजिश करेंगे। यहाँ एक स्केच है जो सर्पिल जैसा दिखता है।
जैसा कि हम जानते हैं, उलम सर्पिल एक बाहरी सर्पिल में सभी प्राकृतिक संख्याओं की व्यवस्था करता है, और केवल उन लोगों को चिह्नित करता है जो प्रमुख हैं। तो उपरोक्त स्केच में केवल वे संख्याएँ दिखाई देती हैं जो काले रंग में दिखाई देती हैं (प्रिम्स)।
चुनौती
एक नंबर N को इनपुट के रूप में स्वीकार करें और उस नंबर तक त्रिकोणीय उलम सर्पिल प्रदर्शित करें।
- इनपुट स्टड या फ़ंक्शन तर्क हो सकता है।
- सर्पिल को सकारात्मक दिशा (यानी, काउंटर-क्लॉकवाइज) में बदलना चाहिए, जैसा कि उपरोक्त आंकड़े में है।
- उपरोक्त आकृति के 120-डिग्री में से कोई भी मोड़ मान्य होगा, और विभिन्न आदानों के लिए मोड़ भिन्न हो सकते हैं। लेकिन निहित त्रिकोणों का सबसे निचला भाग क्षैतिज होना चाहिए, क्योंकि केवल अनुमत मोड़ 120 डिग्री के (गुणक) हैं।
- किसी भी मध्यवर्ती गणना द्वारा आपके डिफ़ॉल्ट डेटा प्रकार के साथ आपके द्वारा किए जाने वाले किसी भी एन तक की अनुमति के लिए कोड को सैद्धांतिक रूप से (पर्याप्त समय और मेमोरी दिया जाना चाहिए) चलना चाहिए ।
double
पर्याप्त है; बड़े पूर्णांक प्रकारों की कोई आवश्यकता नहीं है। - सभी अंतर्निहित कार्यों की अनुमति है।
- मैं अपने स्वयं के उत्तर को स्वीकार नहीं करूंगा (ऐसा नहीं है कि मुझे लगता है कि यह वैसे भी सबसे छोटा होगा ...)।
आउटपुट स्वरूप
निम्न में से कोई भी चुनें।
एक मार्कर (डॉट, सर्कल, क्रॉस, जो भी आप पसंद करते हैं) को अभाज्य संख्याओं पर और गैर-अभाज्य संख्याओं पर एक ग्राफ प्रदर्शित करें । स्केल को दो अक्षों के लिए समान नहीं होना चाहिए। अर्थात्, निहित त्रिभुजों को समबाहु होने की आवश्यकता नहीं है। अक्ष, ग्रिड लाइन और अक्ष लेबल वैकल्पिक हैं। केवल प्रमुख संख्याओं पर मार्करों की आवश्यकता होती है।
एन = 12 के लिए एक उदाहरण आउटपुट निम्नानुसार होगा (उपरोक्त स्केच के साथ तुलना)। दूसरा प्लॉट N = 10000 के अनुरूप एक अधिक दिलचस्प उदाहरण है ।
- उपरोक्त किसी भी छवि प्रारूप (जैसे png, tiff, bmp) के साथ एक छवि फ़ाइल का निर्माण करें ।
ASCII कला के रूप में सर्पिल को प्रदर्शित करें , एक ही पंक्ति में अलग-अलग पदों की संख्या के लिए रिक्त स्थान के साथ, गैर-primes के लिए primes और रिक्त स्थान के लिए अपनी पसंद का एक भी वर्ण का उपयोग करें। लीडिंग या ट्रेलिंग स्पेस या न्यूलाइन्स की अनुमति है। उदाहरण के लिए, N = 12 का उपयोग
o
चरित्र के रूप में किया जाएगाo · · · o · o · · · o · o
जहां निश्चित रूप से केवल
o
अपराधों के निशान ही वास्तव में प्रदर्शित होंगे।·
गैर अभाज्य संख्या में यहाँ केवल संदर्भ के लिए दिखाया गया है।
कसौटी जीतना
वास्तविक इनाम अपने आप को उन अद्भुत पैटर्न कोड गोल्फ के लिए देख रहा है , सबसे छोटा कोड जीतता है।