जाहिरा तौर पर हाँ! तीन आसान चरणों में।
चरण 1
बता दें कि f ( n ) प्राइम-काउंटिंग फंक्शन ( n से कम या उसके बराबर के प्राइम की संख्या) को दर्शाता है ।
पूर्णांक अनुक्रम s ( n ) को निम्नानुसार परिभाषित करें । प्रत्येक सकारात्मक पूर्णांक n के लिए ,
- Initiallize टी करने के लिए एन ।
- जब तक t न तो प्रधान है और न ही 1, तब तक t को f ( t ) और पुनरावृति से प्रतिस्थापित करें ।
- पुनरावृत्तियों की संख्या s ( n ) है।
चलने की प्रक्रिया समाप्त होने की गारंटी है क्योंकि f ( n ) < n सभी n के लिए ।
उदाहरण के लिए विचार करें n = 25। हम t = 25 को आरंभ करते हैं । चूंकि यह अभाज्य नहीं है और न ही 1 है, इसलिए हम f (25) की गणना करते हैं , जो 9. है। यह t के लिए नया मान बन जाता है । यह प्राइम नहीं है और न ही 1 है, इसलिए हम जारी रखते हैं: f (9) है 4. हम फिर से जारी रखते हैं: f (4) 2 है। चूंकि यह एक प्राइम है जिससे हम यहां रुकते हैं। हमने 3 पुनरावृत्तियों को किया है (25 से 9 तक, फिर 4 से, फिर 2 तक)। इस प्रकार s (25) 3 है।
अनुक्रम के पहले 40 पद इस प्रकार हैं। अनुक्रम OEIS में नहीं है।
0 0 0 1 0 1 0 2 2 2 0 1 0 2 2 2 0 1 0 3 3 3 0 3 3 3 3 3 0 3 0 1 1 1 1 1 0 2 2 2
चरण 2
एक विषम धनात्मक पूर्णांक N को देखते हुए , परिमित अनुक्रम s (1), s (2), ..., s ( N 2 ) को एक चौकोर जावक सर्पिल बनाने के लिए N × N सरणी (मैट्रिक्स) का निर्माण करें । उदाहरण के लिए, एन = 5 सर्पिल दिया गया है
s(21) s(22) s(23) s(24) s(25)
s(20) s(7) s(8) s(9) s(10)
s(19) s(6) s(1) s(2) s(11)
s(18) s(5) s(4) s(3) s(12)
s(17) s(16) s(15) s(14) s(13)
या, मानों को प्रतिस्थापित करते हुए,
3 3 0 3 3
3 0 2 2 2
0 1 0 0 0
1 0 1 0 1
0 2 2 2 0
चरण 3
N × N सरणी को एक ग्रे कलर मैप के साथ, या अपने स्वाद के कुछ अन्य कलर मैप के साथ छवि के रूप में प्रस्तुत करें। नक्शा क्रमिक होना चाहिए, ताकि संख्याओं का क्रम रंगों के कुछ स्पष्ट रूप से स्पष्ट क्रम से मेल खाता हो। नीचे दिए गए परीक्षण मामले कुछ उदाहरण रंग मानचित्र दिखाते हैं।
चुनौती
एक अजीब सकारात्मक पूर्णांक एन को देखते हुए , ऊपर वर्णित छवि का उत्पादन करें।
नियम
सर्पिल बाहरी होना चाहिए, लेकिन दक्षिणावर्त या काउंटर-क्लॉकवाइज हो सकता है, और दाएं (ऊपर के उदाहरण में), बाएं, नीचे या ऊपर बढ़ना शुरू कर सकता है।
क्षैतिज और ऊर्ध्वाधर कुल्हाड़ियों के तराजू को समान होने की आवश्यकता नहीं है। इसके अलावा अक्ष लेबल, कलरबार और इसी तरह के तत्व वैकल्पिक हैं। जब तक सर्पिल को स्पष्ट रूप से देखा जा सकता है, तब तक छवि वैध है।
छवियाँ किसी भी मानक साधन द्वारा आउटपुट की जा सकती हैं । विशेष रूप से, छवि को स्क्रीन पर प्रदर्शित किया जा सकता है, या एक ग्राफिक्स फ़ाइल का उत्पादन किया जा सकता है, या आरजीबी मूल्यों की एक सरणी आउटपुट हो सकती है। यदि फ़ाइल या एरे को आउटपुट करते हैं, तो कृपया इसका उदाहरण पोस्ट करें कि यह प्रदर्शित होने पर कैसा दिखता है।
इनपुट के साधन और प्रारूप हमेशा की तरह लचीले होते हैं । एक कार्यक्रम या एक समारोह प्रदान किया जा सकता है । मानक खामियों को मना किया जाता है ।
बाइट्स में सबसे छोटा कोड जीतता है।
परीक्षण के मामलों
निम्नलिखित चित्र (पूर्ण संकल्प के लिए क्लिक करें) एन के कई मूल्यों के अनुरूप हैं । एक क्लॉक-वाइज, राइट-फर्स्ट सर्पिल का उपयोग किया जाता है, जैसा कि ऊपर दिए गए उदाहरण में है। चित्र कई वैध रंग मानचित्रों को भी चित्रित करते हैं।
imshow
करता है
imshow
होता अगर ऐसा होता है।
s(n)
संशोधित किए बिना कुछ प्लॉटिंग फ़ंक्शन / पैकेज में मूल्यों की एक सरणी को खिलाया जा सकता है (मुझे लगताimshow
है कि matplotlib उदाहरण के लिए इसे संभाल सकता है) क्या यह एक स्वीकार्य आउटपुट फॉर्म है?