ตัวเลขที่สำคัญทำให้ผู้คนหลงใหล 2300 ปีที่แล้ว Euclid เขียนใน "Elements" ของเขา
จำนวนเฉพาะคือสิ่งที่วัดโดยหน่วยเดียว
ซึ่งหมายความว่านายกสามารถหารด้วย1(หรือด้วยตัวเอง) เท่านั้น
ผู้คนมักจะมองหาความสัมพันธ์ระหว่างจำนวนเฉพาะและเกิดขึ้นกับบางสิ่งที่แปลก (เช่นใน "น่าสนใจ")
ตัวอย่างเช่นนายก Sophie Germainเป็นนายกpที่2*p+1สำคัญเช่นกัน
นายกปลอดภัยเป็นนายกpที่(p-1)/2ยังเป็นนายกรัฐมนตรีซึ่งเป็นว่าสภาพข้างหลังของนายกโซฟีต์แชร์กแมง
สิ่งเหล่านี้เกี่ยวข้องกับสิ่งที่เรากำลังมองหาในการท้าทายนี้
ห่วงโซ่คันนิงแฮมของประเภทที่เป็นชุดของจำนวนเฉพาะที่องค์ประกอบยกเว้นคนสุดท้ายทุกคนจะเป็นนายกโซฟีต์แชร์กแมงและองค์ประกอบยกเว้นคนแรกที่ทุกคนเป็นนายกปลอดภัย จำนวนขององค์ประกอบในครั้งนี้มีห่วงโซ่ที่เรียกว่ามันยาว
ซึ่งหมายความว่าเราเริ่มต้นด้วยการลากและคำนวณp q=2*p+1ถ้าqเป็นไพร์มด้วยเรามี Cunnigham chain ของ type I ที่มีความยาว 2 จากนั้นเราจะทดสอบ2*q+1และต่อไปเรื่อย ๆ จนกระทั่งจำนวนที่สร้างขึ้นถัดไปเป็นคอมโพสิต
โซ่คันนิงแฮมประเภทIIสร้างขึ้นตามหลักการเดียวกันเกือบทั้งหมดความแตกต่างเพียงอย่างเดียวคือเราตรวจสอบ2*p-1แต่ละขั้นตอน
โซ่คันนิงแฮมสามารถมีความยาว 1ซึ่งหมายความว่า 2 * p + 1 หรือ 2 * p-1 ไม่สำคัญ เราไม่ได้สนใจในสิ่งเหล่านี้
ตัวอย่างบางส่วนของ Cunningham chains
2เริ่มสายโซ่ประเภทที่ฉันมีความยาว 5
2, 5, 11, 23, 47
หมายเลขต่อไปที่สร้างขึ้นจะ95ไม่เป็นจำนวนเฉพาะ
นอกจากนี้ยังบอกเราว่า5, 11, 23และ47ไม่ได้เริ่มต้นห่วงโซ่ของชนิดใด ๆฉันเพราะมันจะมีองค์ประกอบ preceeding
2ก็เริ่มสายโซ่ของประเภทที่สองของความยาว 3
2, 3, 5
ถัดไปจะเป็น9ซึ่งไม่สำคัญ
มาลอง11พิมพ์II กันก่อน (เราแยกออกจากType Iก่อนหน้านี้)
ดี21จะเป็นอย่างไรต่อไปซึ่งไม่ได้เป็นนายกดังนั้นเราจะมีความยาว 1 สำหรับว่า "ลูกโซ่" ซึ่งเราจะไม่นับรวมในความท้าทายนี้
ท้าทาย
เขียนโปรแกรมหรือฟังก์ชั่นที่ได้รับจำนวน
nเป็น input เขียน / ผลตอบแทนจำนวนเริ่มต้นของการที่ nห่วงโซ่คันนิงแฮมของประเภท I หรือ IIของอย่างน้อยยาว 2 , ตามด้วยช่องว่างตามด้วยประเภทของห่วงโซ่มันเริ่มต้น ( ฉันหรือII ) ตามด้วยเครื่องหมายจุดคู่ตามด้วยความยาวของห่วงโซ่ประเภทนั้น ในกรณีที่นายกเริ่มต้นโซ่ทั้งสองประเภท (ประเภทที่ 1 และประเภทที่สอง) โซ่ของประเภทที่ 1 จะถูกนับก่อนตัวอย่าง:
2 I:5
โปรดจำไว้ว่าnอาจเป็นส่วนหนึ่งของห่วงโซ่เริ่มต้นก่อนหน้านี้ทุกประเภทซึ่งในกรณีนี้ไม่ควรพิจารณาจำนวนเริ่มต้นของห่วงโซ่ประเภทนั้น
เรามาดูกันว่ามันจะเริ่มอย่างไร
2เราเริ่มต้นด้วย 2เนื่องจากเป็นครั้งแรกที่สำคัญในทุกสิ่งที่เราสามารถมั่นใจได้ว่ามีความเป็นห่วงโซ่ไม่เริ่มต้นด้วยที่สำคัญที่ต่ำกว่าที่มี จำนวนต่อไปในห่วงโซ่ของประเภทฉันจะเป็น
มีความสำคัญดังนั้นเราจึงมีสายโซ่ที่มีความยาวอย่างน้อย 2 อยู่แล้ว
เรานับว่าเป็นห่วงโซ่แรก แล้ว Type II ล่ะ หมายเลขถัดไปจะเป็น มีความสำคัญดังนั้นโซ่อย่างน้อย 2 ตัวสำหรับประเภท II เช่นกัน
เรานับว่าเป็นห่วงโซ่ที่สอง และเรากำลังทำเพื่อ2*2+1 == 552*2-1 == 332
3ที่สำคัญต่อไปคือ ที่นี่เราควรตรวจสอบว่ามันอยู่ในห่วงโซ่ที่เริ่มต้นที่ต่ำกว่า
ตรวจสอบสำหรับประเภท (3-1)/2 == 1I: 1ไม่สำคัญดังนั้น 3 อาจเป็นจุดเริ่มต้นของสายโซ่ประเภท I.
ลองตรวจสอบดู 3*2+1 == 7ถัดไปจะเป็น 7มีความสำคัญดังนั้นเราจึงมีสายโซ่ชนิดที่ความยาวอย่างน้อย 2 เรานับเป็นห่วงโซ่ที่สาม
ตอนนี้เราตรวจสอบว่า3ปรากฏในห่วงโซ่ประเภท II ที่เริ่มต้นต่ำกว่า
(3+1)/2 == 2. 2มีความสำคัญดังนั้น 3 จึงไม่สามารถถือเป็นหมายเลขเริ่มต้นสำหรับสายโซ่ของประเภท II ดังนั้นนี่จะไม่ถูกนับแม้ว่าจำนวนถัดไปหลังจากนั้น3ในห่วงโซ่นี้ซึ่งจะเป็น5เป็นนายกรัฐมนตรี (แน่นอนเรารู้แล้วว่าและคุณสามารถและควรคิดเกี่ยวกับวิธีการตรวจสอบเหล่านี้ของคุณเอง)
และเพื่อให้เราตรวจสอบสำหรับ5, 7, 11และอื่น ๆ นับจนกว่าเราจะพบว่าห่วงโซ่คันนิงแฮม n ของอย่างน้อยยาว 2
จากนั้น (หรือบางเวลาก่อนหน้านี้;)) เราต้องกำหนดความยาวทั้งหมดของ chain ที่เราพบและพิมพ์ผลลัพธ์ในรูปแบบที่กล่าวถึงก่อนหน้า
โดยวิธีการในการทดสอบของฉันฉันไม่ได้พบที่สำคัญใด ๆ นอกเหนือจากที่เริ่มต้นทั้งสองประเภทของเครือข่ายที่มีความยาวมากขึ้นกว่า21
ตัวอย่างอินพุต / เอาท์พุต
อินพุต
1เอาท์พุต
2 I:5
อินพุต
10เอาท์พุต
79 II:3
อินพุต
99เอาท์พุต
2129 I:2
เอาต์พุตสำหรับอินพุต 1..20
2 I: 5 2 II: 3 3 I: 2 7 II: 2 19 II: 3 29 I: 2 31 II: 2 41 I: 3 53 I: 2 79 II: 3 89 I: 6 97 II: 2 113 I: 2 131 I: 2 139 II: 2 173 ฉัน: 2 191 I: 2 199 II: 2 211 II: 2 229 II: 2
รายชื่อของเอาท์พุท 5000 ครั้งแรกที่สามารถพบได้ที่นี่
นี่คือรหัสกอล์ฟ ช่องว่างโดยพลการได้รับอนุญาตในการส่งออก แต่ประเภทและตัวเลขควรคั่นด้วยช่องว่างเดียวและลำไส้ใหญ่ตามที่เห็นในตัวอย่าง การใช้ช่องโหว่ใด ๆ ที่ไม่ได้รับอนุญาตโดยเฉพาะอย่างยิ่งได้รับผลจากเว็บจะไม่ได้รับอนุญาต
โชคดี :)
:)
2ความยาวสายโซ่คู่ที่มากกว่า 1 นี่คือการพิสูจน์โดยการกำจัด
2และ3เป็นเพียงช่วงเวลาเดียวpที่ทั้งคู่2p-1และ2p+1เป็นช่วงเวลาดังนั้นจึง2เป็นไพรม์เดียวที่เริ่มต้นเชน Cunningham ที่ไม่สำคัญของทั้งสองประเภท