प्राइम नंबर ने हमेशा लोगों को मोहित किया है। 2300 साल पहले यूक्लिड ने अपने "एलिमेंट्स" में लिखा था
एक अभाज्य संख्या वह है जो अकेले एक इकाई द्वारा मापी जाती है।
जिसका अर्थ है कि एक अभाज्य केवल 1
(या अपने आप से) विभाज्य है ।
लोगों ने हमेशा अभाज्य संख्याओं के बीच संबंधों की तलाश की है, और कुछ बहुत ही अजीब (जैसे "दिलचस्प") सामान के साथ आए हैं।
उदाहरण के लिए एक सोफी जर्मेन प्राइम एक प्रमुख p
है जिसके 2*p+1
लिए यह भी प्रमुख है।
एक सुरक्षित प्राइम एक ऐसा प्राइम p
है जिसके लिए प्राइम (p-1)/2
भी है, जो कि सोफी जर्मेन प्राइम की बिल्कुल पीछे की स्थिति है।
ये इस चुनौती से संबंधित हैं।
प्रकार की एक कनिंघम श्रृंखला मैं एक श्रृंखला है, जिसमें हर एक तत्व है, जिसमें अंतिम एक को छोड़कर प्रत्येक तत्व एक सोफी जर्मेन प्राइम है , और प्रत्येक तत्व को छोड़कर पहला एक सुरक्षित प्राइम है । इस श्रृंखला में तत्वों की संख्या को लंबाई कहा जाता है ।
इसका मतलब है कि हम एक प्रमुख के साथ शुरू करते हैं p
और गणना करते हैं q=2*p+1
। यदि q
प्राइम भी है, तो हमारे पास लंबाई I के प्रकार की एक क्यूनिघम श्रृंखला है । फिर हम परीक्षण करते हैं 2*q+1
और तब तक, जब तक कि अगली उत्पन्न संख्या समग्र न हो।
टाइप II के कनिंघम श्रृंखला का निर्माण लगभग उसी सिद्धांत के बाद किया गया है, एकमात्र अंतर जो हम 2*p-1
प्रत्येक चरण में जांचते हैं।
कनिंघम श्रृंखला की लंबाई 1 हो सकती है , जिसका अर्थ है कि न तो 2 * p + 1 और न ही 2 * p-1 प्रमुख हैं। हमें इनमें कोई दिलचस्पी नहीं है ।
कनिंघम श्रृंखला के कुछ उदाहरण
2
लंबाई 5 के प्रकार I की श्रृंखला शुरू करता है ।
2, 5, 11, 23, 47
अगली निर्मित संख्या वह होगी 95
जो प्रधान नहीं है।
यह भी हमें बताता है, कि 5
, 11
, 23
और 47
प्रकार के किसी भी श्रृंखला शुरू नहीं करते हैं मैं , क्योंकि यह पूर्ववर्ती तत्वों होगा।
2
लंबाई 3 के प्रकार II की एक श्रृंखला भी शुरू करता है ।
2, 3, 5
अगला होगा 9
, जो प्रमुख नहीं है।
चलो 11
प्रकार II के लिए प्रयास करें (हमने इसे पहले प्रकार से बाहर रखा )।
खैर, 21
अगला होगा, जो कि प्रमुख नहीं है, इसलिए हमारे पास उस "श्रृंखला" के लिए लंबाई 1 होगी, जिसे हम इस चुनौती में नहीं गिनते हैं।
चुनौती
एक प्रोग्राम या फ़ंक्शन लिखें, जिसे
n
इनपुट के रूप में एक नंबर दिया गया है, जो टाइप I या II की कम से कम लंबाई 2 की nth कनिंघम श्रृंखला की प्रारंभिक संख्या को लिखता है / वापस करता है , इसके बाद एक स्पेस शुरू होता है, इसके बाद चेन का प्रकार शुरू होता है ( I या II ), एक बृहदान्त्र द्वारा पीछा किया जाता है, उसके बाद उस प्रकार की श्रृंखला की लंबाई। मामले में एक अभाज्य दोनों प्रकार की श्रृंखलाएं शुरू होती हैं (प्रकार I और प्रकार II) प्रकार की श्रृंखला पहले गिना जाता है।उदाहरण:
2 I:5
ध्यान रखें, यह n
किसी भी प्रकार की पहले से शुरू की गई श्रृंखला का हिस्सा हो सकता है, उस स्थिति में इसे उस प्रकार की श्रृंखला की प्रारंभिक संख्या नहीं माना जाना चाहिए ।
आइए देखें कि यह कैसे शुरू होता है
हम शुरुआत करते हैं 2
। चूँकि यह पहला अभाज्य है, इसलिए हम यह सुनिश्चित कर सकते हैं कि कम अभाज्य से शुरू होने वाली कोई श्रृंखला नहीं है 2
।
प्रकार की एक श्रृंखला में अगला नंबर मैं होगा 2*2+1 == 5
। 5
प्रधान है, इसलिए हमारे पास कम से कम लंबाई 2 की एक श्रृंखला पहले से ही है।
हम पहली श्रृंखला के रूप में गिनती करते हैं। प्रकार II के बारे में क्या? अगला नंबर होगा 2*2-1 == 3
। 3
प्राइम है, इसलिए टाइप II के लिए भी कम से कम लंबाई 2 की एक श्रृंखला है।
हम दूसरी श्रृंखला के रूप में गिनती करते हैं। और हम कर रहे हैं 2
।
अगला प्रधानमंत्री है 3
। यहां हमें जांचना चाहिए कि क्या यह एक श्रृंखला में है कि एक कम प्राइम शुरू हुआ।
टाइप I के लिए जाँच करें (3-1)/2 == 1
:। 1
प्राइम नहीं है, इसलिए 3 I की श्रृंखला के लिए एक प्रारंभिक बिंदु हो सकता है।
आइए देखते हैं कि। अगला होगा 3*2+1 == 7
। 7
प्राइम है, इसलिए हमारे पास कम से कम लंबाई 2 के प्रकार I की एक श्रृंखला है। हम इसे तीसरी श्रृंखला के रूप में गिनते हैं।
अब हम 3
जांचते हैं कि क्या एक प्रकार II श्रृंखला में दिखाई देता है जो एक कम प्राइम शुरू हुआ।
(3+1)/2 == 2
। 2
प्राइम है, इसलिए 3 को टाइप II की श्रृंखला के लिए शुरुआती संख्या के रूप में नहीं माना जा सकता है । तो यह गणना नहीं की जाती है, भले ही 3
इस श्रृंखला में अगला नंबर हो , जो होगा5
, प्रमुख है। (बेशक हम पहले से ही जानते थे कि, और आप निश्चित रूप से अपनी खुद की विधि के बारे में सोच सकते हैं कि ये जांच कैसे करें।)
और इसलिए हम के लिए पर जांच 5
, 7
, 11
जब तक हम कम से कम लंबाई 2 के n वें कनिंघम श्रृंखला खोजने के लिए और इतने पर है, उनकी गिनती।
तब (या शायद कुछ समय पहले ;)
) हमें श्रृंखला की पूरी लंबाई निर्धारित करने की आवश्यकता है जो हमने पाया और पहले से उल्लेखित प्रारूप में परिणाम प्रिंट किया।
वैसे: मेरे परीक्षणों में मुझे इसके अलावा कोई भी प्राइम नहीं मिला है 2
जो दोनों प्रकार की श्रृंखलाओं की लंबाई से अधिक हो 1
।
इनपुट / आउटपुट उदाहरण
इनपुट
1
उत्पादन
2 I:5
इनपुट
10
उत्पादन
79 II:3
इनपुट
99
उत्पादन
2129 I:2
इनपुट के लिए आउटपुट 1..20
2 I: 5 2 द्वितीय: 3 3 I: 2 द्वितीय: २ 19 द्वितीय: 3 29 मैं: 2 31 द्वितीय: 2 ४१ आई: ३ 53 I: 2 79 II: 3 89 I: 6 97 II: 2 113 I: 2 131 मैं: 2 139 II: 2 173 I: 2 191 I: 2 199 II: 2 211 II: 2 229 II: 2
पहले 5000 आउटपुट की सूची यहां मिल सकती है ।
यह कोड गोल्फ है। आउटपुट में मनमाने व्हाट्सएप की अनुमति है, लेकिन प्रकार और संख्याओं को एकल स्थान और कोलोन द्वारा अलग किया जाना चाहिए जैसा कि उदाहरणों में देखा गया है। किसी भी खामियों का उपयोग करने की अनुमति नहीं है, विशेष रूप से वेब से परिणाम प्राप्त करने की अनुमति नहीं है ।
सौभाग्य :)
:)
2
। यहां उन्मूलन द्वारा एक प्रमाण है।
2
और3
केवल एक ही प्राइम हैंp
, जिसके लिए दोनों2p-1
और2p+1
प्राइम हैं, इसलिए2
एकमात्र ऐसा प्राइम है जो दोनों प्रकार के गैर-तुच्छ कनिंघम श्रृंखला शुरू करता है ।