คำถามติดแท็ก sequence

สำหรับความท้าทายที่เกี่ยวข้องกับการเรียงลำดับบางอย่าง

8
A083569: m ที่เล็กที่สุดที่ไม่ได้เกิดขึ้นก่อนหน้านี้ดังนั้น m + n จึงเป็นไพร์ม
กำหนดลำดับ 1 ที่จัดทำดัชนีดังนี้: A083569(1) = 1 A083569(n)โดยที่nเป็นจำนวนเต็มมากกว่า1นั้นเป็นจำนวนเต็มที่น้อยที่สุด m ที่ไม่เกิดขึ้นก่อนหน้าเช่นที่m+nเป็นจำนวนเฉพาะ งานของคุณคือการใช้เวลาในการและผลตอบแทนnA083569(n) n A083569(n) 1 1 2 3 3 2 4 7 5 6 6 5 7 4 8 9 9 8 10 13 11 12 12 11 13 10 14 15 15 14 16 21 17 20 18 19 19 18 …

30
มันคือ semiprime หรือไม่?
น่าแปลกที่ฉันไม่คิดว่าเรามีคำถามเกี่ยวกับรหัสกอล์ฟเพื่อพิจารณาว่าตัวเลขนั้นเป็นครึ่งปีหรือไม่ semiprime เป็นจำนวนธรรมชาติที่เป็นผลคูณของจำนวนเฉพาะสองตัว (ไม่จำเป็นต้องแตกต่างกัน) เรียบง่าย แต่มีแนวคิดที่สำคัญอย่างน่าทึ่ง รับจำนวนเต็มบวกกำหนดว่าเป็น semiprime เอาต์พุตของคุณสามารถอยู่ในรูปแบบใดก็ได้ตราบใดที่ให้เอาต์พุตเดียวกันสำหรับค่าความจริงหรือเท็จ คุณอาจจะสมมติว่าข้อมูลที่คุณป้อนมีขนาดเล็กพอที่ประสิทธิภาพหรือล้นไม่ได้เป็นปัญหา กรณีทดสอบ: input -> output 1 -> false 2 -> false 3 -> false 4 -> true 6 -> true 8 -> false 30 -> false (5 * 3 * 2), note it must be EXACTLY 2 (non-distinct) primes 49 -> …

30
เหรียญยูโรและธนบัตร
เนื่องจากประเทศส่วนใหญ่ที่ใช้ยูโรมี ,ตัวคั่นทศนิยมคุณต้องใช้ด้วยเช่นกัน ภารกิจคือส่งออกค่าทั้งหมดของเหรียญยูโรและธนบัตรในลำดับจากน้อยไปหามาก คุณต้องใส่ส่วนท้าย,00ของค่าจำนวนเต็ม 0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00 ฉันยอมรับทั้งเอาต์พุตไปยัง stdout หรือฟังก์ชั่นที่ส่งคืนอาร์เรย์ / รายการ หากเอาต์พุตคือ stdout ตัวคั่นที่ยอมรับได้ระหว่างค่าคือ: space, tab หรือ newline จะไม่มีคำตอบที่ยอมรับเว้นแต่ฉันจะเห็นคนที่ฉันคิดว่าสร้างสรรค์มาก code-golfดังนั้นฉันต้องการรู้คำตอบสั้น ๆ ด้วยภาษา ปรับปรุง: 0ค่าศูนย์นำหน้าไม่เป็นที่ยอมรับ ขออภัยฉันควรทำให้ชัดเจนก่อน อัปเดต 2: นอกจากนี้ยังเป็นที่ยอมรับฟังก์ชั่นกลับสตริง

3
การจัดเรียงฟอง
หมายเหตุ: ความท้าทายคัดลอกมาจากคำถามที่ถามที่math.stackexchange เมื่อเร็ว ๆ นี้ฉันมีทักษะในการเป่าฟองสบู่ ตอนแรกฉันจะเป่าฟองสบู่แบบนี้ แต่สิ่งต่าง ๆ เริ่มแปลกประหลาด: หลังจากผ่านไปครู่หนึ่งฉันก็เป่าฟองแปลก ๆ หลังจากเป่าไปหลายร้อยฟองอาจจะถึงพันแล้วหน้าผากของฉันก็เหี่ยวย่นกับคำถาม: เมื่อได้รับฟอง n คุณสามารถจัดเรียงพวกเขาได้ในหลายวิธี ตัวอย่างเช่นถ้า n = 1 จะมีเพียง 1 การจัดเรียงเท่านั้น ถ้า n = 2 จะมีการจัดเรียง 2 แบบ ถ้า n = 3 มีการจัดเรียง 4 รายการ ถ้า n = 4 มีการจัดเรียง 9 รายการ ต่อไปนี้คือการจัดเรียง 9 ฟอง 4 รายการ: หลังจากเป่าฟองสบู่มหัศจรรย์ทั้งหมดนี้ฉันตัดสินใจว่าฉันควรแบ่งปันความสุขในการนับการจัดการกับพวกเขา ดังนั้นนี่คืองานของคุณ: …

11
หมายเลขคอมโพสิตที่ทนต่อ Bitflip
บางครั้งเมื่อเขียนโปรแกรมคุณต้องใช้จำนวนเฉพาะด้วยเหตุผลบางอย่างหรืออื่น ๆ (เช่นการเข้ารหัส) ฉันคิดว่าบางครั้งคุณต้องใช้หมายเลขคอมโพสิตด้วย บางครั้งอย่างน้อยที่นี่ใน PPCG โปรแกรมของคุณจะต้องสามารถจัดการกับการเปลี่ยนแปลงโดยพลการ และในสถานการณ์ที่วางแผนจะสร้างคำถาม PPCG ที่น่าสนใจอย่างสะดวกสบายบางทีแม้แต่ตัวเลขที่คุณใช้ก็ต้องทนต่อการทุจริต ... คำนิยาม จำนวนคอมโพสิตเป็นจำนวนเต็ม≥ 4 ที่ไม่ได้เป็นนายกคือมันเป็นผลิตภัณฑ์ของจำนวนเต็มสองจำนวนที่มีขนาดเล็กมากกว่า 1 ต่อ A bitflip ทนจำนวนคอมโพสิตถูกกำหนดให้เป็นดังนี้ก็เป็นจำนวนเต็มบวกคอมโพสิตซึ่งถ้าคุณเขียนมัน ในเลขฐานสองในจำนวนบิตที่น้อยที่สุดที่เป็นไปได้คุณสามารถเปลี่ยนหนึ่งหรือสองบิตจากจำนวนและจำนวนยังคงประกอบ ตัวอย่าง ตัวอย่างเช่นพิจารณาจำนวน 84 1010100ในไบนารีว่า นี่คือตัวเลขทั้งหมดที่ต่างกันไม่เกิน 2 บิตจาก: 0000100 4 2 × 2 0010000 16 4 × 4 0010100 20 4 × 5 0010101 21 3 × 7 0010110 22 …

21
จำนวน n หลักที่เล็กที่สุดที่มีเฉพาะตัวเลขเหล่านี้
คุณจะต้องสร้างนายกเล็กที่สุดด้วยตัวเลขและมันจะมีตัวเลขที่ระบุไว้ในรายการnk ตัวอย่าง: การป้อนข้อมูล: 4 1 2 สำหรับนี้คุณต้องสร้างนายกเล็กที่สุดด้วย4ตัวเลขและที่สำคัญต้องมีเพียงตัวเลขและ12 เอาท์พุท: 2111 การป้อนข้อมูล: 10 0 4 7 เอาท์พุท: 4000000007 การป้อนข้อมูล: 6 5 5 5 5 5 5 5 5 5 5 1 5 5 5 5 5 5 5 5 5 5 เอาท์พุท: 115151 คุณสามารถรับประกันได้ว่าอินพุตจะอยู่ในรูปแบบที่คุณระบุเสมอและคุณสามารถทำอะไรก็ได้หากคุณได้รับอินพุตที่ไม่ถูกต้อง (เช่นอินพุตเป็นตัวเลขหลักเดียวnโดยไม่มีk) หากไม่มีวิธีแก้ไขดังกล่าวต่ออินพุตอยู่โปรแกรมของคุณได้รับอนุญาตให้ทำสิ่งใดสิ่งหนึ่งต่อไปนี้: พิมพ์ banana โยนข้อผิดพลาด วิ่งไปตลอดกาล สิ่งอื่นใด เนื่องจากนี่เป็นโค้ดกอล์ฟพยายามที่จะตั้งรหัสให้สั้นที่สุด …

19
ค้นหาปีที่จัดเรียง
ปี 2556 มีทรัพย์สินที่น่าสนใจ: ตัวเลขเรียงต่อกันเมื่อเรียงลำดับ (0123) ลองเรียกหมายเลขประเภทนี้ว่าตัวเลขที่เรียงได้:จำนวนเต็มแบบไม่ลบที่มีตัวเลขฐาน 10 ต่อเนื่องกันหลังจากเรียงลำดับ น่าเสียดายที่สิ่งนี้จะไม่เกิดขึ้นอีกจนกว่าจะถึงปี 2031 และหลังจากนั้นไม่ถึงปี 2103 ความท้าทายของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่เมื่อได้รับจำนวนเต็มไม่เป็นลบผ่านวิธีมาตรฐานใด ๆ กฎระเบียบ อินพุตและเอาต์พุตต้องอยู่ในฐาน 10 เอาต์พุตอาจอยู่ในรูปแบบที่เหมาะสม (จำนวนตัวอักษร, สตริงตัวอักษร, อาร์เรย์รายการเดียว, ... ) รหัสของคุณจะต้องสร้างเอาต์พุตที่เหมาะสมภายใน 1 นาทีสำหรับอินพุตทั้งหมดสูงสุด 98764 กรณีทดสอบ 0 -> 1 1 -> 2 9 -> 10 10 -> 12 11 -> 12 99 -> 102 233 -> 234 234 …

14
อัตโนมัติ OEIS
เรามาดูกันเป็นจำนวนมากของความท้าทายที่นี่ขอฟังก์ชั่นเพื่อสร้างลำดับจากที่OEIS แม้ว่าความท้าทายเหล่านี้จะสนุก แต่ในฐานะโปรแกรมเมอร์ฉันเห็นโอกาสสำหรับระบบอัตโนมัติ ความท้าทายของคุณคือการสร้างโปรแกรมที่ใช้ดัชนีของลำดับ (เช่นA172141 ) และจำนวนเต็ม n (เช่น 7) และดึงค่าที่เหมาะสมจากหน้าเว็บที่เหมาะสม I / O ดังที่กล่าวไว้โปรแกรมของคุณควรใช้ดัชนีลำดับและค่าบางค่าเป็นอินพุตและเอาต์พุตคำที่ n ในลำดับนั้น คุณยอมรับดัชนีใด ๆ ในลำดับของB-ไฟล์ หากดัชนีมากกว่าดัชนีที่ใหญ่ที่สุดที่ระบุไว้ในไฟล์ B คุณอาจส่งข้อยกเว้นหรือส่งออกสิ่งที่คุณเลือก (สิ่งเหล่านี้ไม่ได้อยู่ในกรณีทดสอบ) อนุญาตวิธีการอินพุตและเอาต์พุตมาตรฐาน ข้อ จำกัด ในการใช้งานเว็บ คุณไม่ควรเข้าถึงเว็บไซต์ใด ๆ นอกเหนือจากhttps://oeis.orgและhttp://oeis.org ซึ่งรวมถึงตัวย่อ URL เว็บไซต์ส่วนตัวของคุณและคำถามนี้เอง หากคุณต้องการเข้าถึงเว็บไซต์อื่นและคุณเชื่อว่ามันไม่ยุติธรรมที่จะอนุญาตให้คุณทำเช่นนั้นคุณสามารถแสดงความคิดเห็นและฉันจะตัดสิน เกณฑ์การให้คะแนน นี่เป็นความท้าทายของโปรแกรมกอล์ฟดังนั้นโปรแกรมที่มีจำนวนไบต์น้อยที่สุดที่ใช้ในซอร์สโค้ดจะเป็นผู้ชนะ ช่องโหว่มาตรฐานไม่ได้รับอนุญาต กรณีทดสอบ สมมติว่าเครื่องของคุณมีการเชื่อมต่ออินเทอร์เน็ตที่เหมาะสมและเซิร์ฟเวอร์ OEIS ทำงานและใช้งานอินพุตและเอาต์พุตต่อไปนี้ควรสอดคล้องกัน A172141, 7 -> 980 A173429, 4 -> 276 …

21
สลับบิตกับเพื่อนบ้าน
คำอธิบายงาน ได้รับจำนวนเต็มสลับมัน(2k-1) -th และ2k -th น้อยบิตที่สำคัญสำหรับจำนวนเต็มทั้งหมดk> 0 นี่คือลำดับA057300ใน OEIS (ตัวเลขจะถือว่ามีเลขศูนย์นำหน้าเป็น "จำนวนอนันต์" ในทางปฏิบัตินี่หมายถึงการเตรียมตัวเลขบิตความยาวคี่ 0 บิตหนึ่งครั้ง) นี่คือโค้ดกอล์ฟดังนั้นรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ กรณีทดสอบ 0 -> 0 1 -> 2 9 -> 6 85 -> 170 220 -> 236 1827 -> 2835 47525 -> 30298

2
รอบในการเข้ารหัสความยาว
พิจารณาลำดับเลขฐานสองบางส่วนโดยใช้1และ2ตัวอย่าง: 1, 2, 1, 1, 2, 2, 1, 2, 1, 2, 2, 1 ... ลองเขียนความยาววิ่งของ: 1, 2, 1, 1, 2, 2, 1, 2, 1, 2, 2, 1 ... _ _ ____ ____ _ _ _ ____ 1, 1, 2, 2, 1, 1, 1, 2, ... ในกรณีนี้เราได้รับลำดับไบนารี่อีกอัน แน่นอนว่าไม่รับประกัน (เช่นถ้าเราทำซ้ำขั้นตอนที่สามจะเป็น3) แต่เราคิดเอาเอง ตอนนี้คำถามคือเราสามารถหาลำดับที่ใช้การเข้ารหัสแบบ …

30
การเพิ่มตัวเลขและตัวเลขกลับด้าน
รับตัวเลข> 0 ส่งออกผลรวมกับตัวเลขทั้งหมด (1 .. n) เรียงต่อกันและย้อนกลับและเพิ่มขึ้น ตัวอย่างเช่นด้วย n = 6: หมายเลข 1 ถึง 6 เรียงต่อกัน: 123456 ย้อนกลับ 654321 การรวมเข้าด้วยกันจะทำให้: 777777 อีกตัวอย่างหนึ่งคือ n = 11: 1 2 3 4 5 6 7 8 9 10 11 > 1234567891011 และ 11 10 9 8 7 6 5 4 3 2 1 …

30
ลำดับการบวกลบ
ลำดับการบวกลบ ลำดับบวกลบเป็นหนึ่งที่เริ่มต้นด้วยสองเมล็ดและa(0) b(0)การวนซ้ำของลำดับนี้แต่ละครั้งเป็นการเพิ่มและลบสมาชิกสองคนก่อนหน้าของลำดับ นั่นคือและa(N) = a(N-1) + b(N-1)b(N) = a(N-1) - b(N-1) วัตถุประสงค์ Produce ลำดับบวกลบในไม่มีที่สิ้นสุดหรือแรกขั้นตอนที่กำหนดK Kคุณสามารถทำได้โดยใช้โปรแกรมเอาต์พุตไม่ จำกัด ตัวสร้างหรือฟังก์ชัน / โปรแกรมที่ให้Kขั้นตอนแรก ลำดับผลลัพธ์ไม่สำคัญตราบใดที่มันสอดคล้องกัน (เช่นb(K) a(K)หรือa(K) b(K)ด้วยตัวคั่นที่ไม่ใช่ตัวเลขบางตัวไม่ใช่บรรทัดใหม่ในระหว่าง) เอาท์พุทจะต้องเริ่มต้นด้วยการป้อนข้อมูล กรณีทดสอบ สำหรับอินพุต10 2(จากa(0) b(0)นี่คือผลลัพธ์ที่เป็นไปได้สำหรับวิธี K แรก (หรือส่วนย่อยของวิธีที่ไม่มีที่สิ้นสุด): 10 2 12 8 20 4 24 16 40 8 48 32 80 16 96 64 160 32 …

28
ทำให้ฉันเป็น metasequence
พื้นหลัง สำหรับความท้าทายนี้ 'metasequence' จะถูกกำหนดเป็นลำดับของตัวเลขที่ไม่เพียง แต่ตัวเลขจะเพิ่มขึ้น แต่ยังเพิ่มขึ้นและการเพิ่มขึ้นจะเพิ่มขึ้นตามมูลค่าที่เพิ่มขึ้น ฯลฯ ตัวอย่างเช่น metasequence ระดับ 3 จะเริ่มเป็น: 1 2 4 8 15 26 42 64 93 130 176 เพราะ: 1 2 3 4 5 6 7 8 9 >-| ↓+↑ = 7 | Increases by the amount above each time 1 2 4 7 11 …

30
วาดลูกศรที่กำลังขยาย
ความท้าทายนี้เกี่ยวกับการพิมพ์ชุดของลูกศรศิลปะ ASCII ที่กำลังเติบโต ฉันจะอธิบายรูปแบบในคำพูด แต่มันอาจจะง่ายกว่าที่จะดูว่าการเริ่มต้นของซีรี่ส์นี้เป็นอย่างไร: > < -> <- --> <-- ---> <--- ----> <---- -----> <----- ------> <------ ... ลูกศรที่มีความยาว n มีหัวลูกศร ( <หรือ>) และn-1ขีดกลาง ( -) ลูกศรที่หันเข้าหาด้านขวามีขีดกลางก่อนจากนั้น a >. ลูกศรหันซ้ายเริ่มต้นด้วย<และตามด้วยเครื่องหมายขีดกลาง ชุดประกอบด้วยnลูกศรหันไปทางความยาวขวาตามด้วยลูกศรหันหน้าไปทางซ้าย n ความยาวโดยมี n ตั้งแต่ 1 ถึงอินฟินิตี้ ในการทำสิ่งที่ท้าทายให้เขียนโปรแกรมหรือฟังก์ชั่นที่รับหนึ่งอินพุตเต็มจำนวนi >= 1และส่งออกลูกiศรแรก ลูกศรเป็นรายบุคคลไม่ใช่คู่ซ้ายขวาดังนั้นi=3คุณควรส่งออก: > < -> คุณสามารถส่งคืนรายการสตริงหรือพิมพ์ทีละรายการ หากการพิมพ์ลูกศรจะต้องคั่นด้วยตัวคั่นบางตัวที่สอดคล้องกันซึ่งไม่จำเป็นต้องขึ้นบรรทัดใหม่ตามตัวอย่าง นี่คือโค้ดกอล์ฟซึ่งมีจำนวนน้อยที่สุดที่จะชนะ

28
การแจงนับจำนวนเต็มวิงเวียน
ความท้าทายของคุณในวันนี้คือการส่งออกคำที่กำหนดของลำดับที่ระบุจำนวนเต็มทั้งหมด ลำดับมีดังนี้: ถ้าเรามีฟังก์ชั่น 0 ดัชนีสร้างลำดับf(n)และceil(x)เป็นฟังก์ชั่นเพดานแล้วf(0) = 0; abs(f(n)) = ceil(n/2); sign(f(n))เป็นบวกเมื่อnและceil(n/2)เป็นทั้งคู่หรือทั้งคู่ เพื่อช่วยให้เข้าใจลำดับนี้คำศัพท์สองสามคำแรกมีดังนี้: 0 1 -1 -2 2 3 -3 -4 4 5 -5 -6 6 7 -7... งานของคุณคือการเขียนโปรแกรมที่ใช้จำนวนเต็มnและส่งออกnคำที่ตามลำดับ อินพุตอาจเป็น 0 หรือ 1-indexed เท่านั้น กรณีทดสอบ (ดัชนี 0): 0 => 0 1 => 1 2 => -1 3 => -2 4 => …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.