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

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

2
ลำดับเปลือก Koopa
ในเกมซูเปอร์มาริโอที่หลากหลายเปลือกหอยสีเขียวและสีแดงของ Koopa Troopaสามารถเลื่อนลงบนพื้นผิวเรียบได้อย่างไม่น่าเชื่อและทำลายบล็อกอิฐที่ขวางทาง เมื่อกระสุนกระทบกับบล็อกอิฐบล็อกจะแตกตัวกลายเป็นพื้นที่ว่างเปล่าและกระสุน Koopa กลับทิศทาง เป็นตัวอย่างที่ดูเปลือกสีแดงที่นี่ สมมติว่าระดับซูเปอร์มาริโอนั้นสูงเพียงหนึ่งบล็อกและเซลล์กริดทุกเซลล์เป็นอิฐหรือพื้นที่ว่างยกเว้นเซลล์ที่อยู่ด้านซ้ายสุดที่มีกระสุนเคลื่อนที่ไปทางขวา ระดับยังเป็นระยะดังนั้นหากเชลล์ออกจากขอบขวาหรือซ้ายของระดับมันจะกลับเข้าสู่ฝั่งตรงข้าม ในสถานการณ์เช่นนี้เปลือกจะยังคงกระเด็นและทำลายบล็อกอิฐทั้งหมดในระดับจนกว่าจะไม่มีอีกต่อไป เปลือกจะเดินทางไกลแค่ไหนหลังจากที่บล็อกอิฐก้อนสุดท้ายแตก? ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในจำนวนเต็มทศนิยมที่ไม่เป็นลบ หมายเลขนี้ซึ่งแสดงในรูปแบบไบนารีโดยไม่มีศูนย์นำหน้า (ข้อยกเว้นเพียงอย่างเดียวคือ 0 เอง) เข้ารหัสเค้าโครงเลย์เอาต์ระดับสูงหนึ่งบล็อก A 1คือบล็อกอิฐและ a 0คือพื้นที่ว่าง Koopa Shell ถูกแทรกที่ขอบด้านซ้ายของระดับและเริ่มขยับไปทางขวา ตัวอย่างเช่นระดับที่เกี่ยวข้องกับการป้อนข้อมูล39คือ >100111 เพราะ100111เป็น 39 ในไบนารี่และ>และ<เป็นตัวแทนของเชลล์ที่เคลื่อนที่ทั้งซ้ายและขวาตามลำดับ คุณต้องพิมพ์หรือคืนค่าระยะทางทั้งหมดที่กระสุนเดินทางเมื่อเปลือกอิฐก้อนสุดท้าย (อาคา1) แตกหัก ผลลัพธ์สำหรับ39คือ7และการเปลี่ยนแปลงในระดับมีลักษณะดังนี้: Level Cumulative Distance >100111 0 <000111 0 >000110 0 0>00110 1 00>0110 2 000>110 3 000<010 …

19
ย้อนกลับและสี่เหลี่ยม
ในการท้าทายนี้คุณจะคำนวณตัวเลขจากลำดับที่น่าสงสัย ข้อมูลที่คุณป้อนเป็นจำนวนเต็มแบบไม่ลบทศนิยม กลับบิตในจำนวนเต็มนี้แล้วตารางจำนวนเพื่อรับผลลัพธ์ที่ต้องการ เมื่อย้อนกลับบิตคุณต้องไม่ใช้เลขศูนย์นำหน้าในอินพุต ตัวอย่างเช่น: 26 (base 10) = 11010 (base 2) -> 01011 (base 2) = 11 -> 11*11 = 121 25 อินพุต / เอาต์พุตแรกของลำดับนี้: 0: 0 1: 1 2: 1 3: 9 4: 1 5: 25 6: 9 7: 49 8: 1 9: 81 10: 25 11: 169 …

6
เพิ่มขึ้นลำดับเพิ่มขึ้น
เรามีลำดับของจำนวนเต็มที่ไม่เป็นลบที่เพิ่มขึ้นอย่างเคร่งครัดเช่น: 12 11 10 รอ! ลำดับนี้ไม่เพิ่มขึ้นอย่างแน่นอนใช่ไหม ตัวเลขเขียนในฐานที่ต่างกัน ฐานที่เป็นไปได้น้อยที่สุดคือ 2 ที่ใหญ่ที่สุดคือ 10 งานคือการคาดเดาฐานแต่ละหมายเลขถูกเขียนเพื่อให้: ลำดับเพิ่มขึ้นอย่างเข้มงวด ผลรวมของฐานถูกขยายให้ใหญ่สุด ตัวอย่างเช่นการแก้ปัญหาสำหรับตัวอย่างจะเป็น: 6 8 10 เพราะภายใต้ฐานผู้ลำดับกลายเป็น8 9 10ทศนิยม - 6+8+10ลำดับที่เพิ่มขึ้นอย่างเคร่งครัดและเราไม่ได้มีความสามารถในการหาฐานที่ยังคงอยู่ลำดับที่เพิ่มขึ้นอย่างเคร่งครัดและมีผลรวมมีขนาดใหญ่กว่า เนื่องจากข้อ จำกัด ที่สองแก้ปัญหา3 5 7ไม่เป็นที่พอใจ: ทั้งๆที่ความจริงว่าลำดับกลายเป็น5 6 7ภายใต้ฐานเหล่านั้น - 3+5+7 < 6+8+10เราจำเป็นต้องเพิ่มผลรวมฐานและ หากไม่มีฐาน2<=b<=10เป็นไปได้ที่ซีรี่ส์จะเพิ่มขึ้นอย่างเคร่งครัดเช่น: 102 10000 10 เดียว 0 ควรจะออก ลำดับการป้อนข้อมูลสามารถส่งผ่านในวิธีที่สะดวกที่สุดสำหรับโซลูชันของคุณ (พารามิเตอร์อินพุต / บรรทัดคำสั่งมาตรฐาน / อาร์กิวเมนต์ของฟังก์ชัน ... )

13
เลเยอร์ Sierpinski
เริ่มต้นด้วย/\คุณสามารถสร้างสามเหลี่ยมเช่นเดียวกับรูปแบบSierpinskiโดยการเพิ่มบรรทัดด้านล่างที่ ... กิ่งก้านที่หลวม/หรือ\แยกอีกเป็นสองกิ่ง: /\. การชนกันของกิ่งไม้\/จะตายโดยไม่มีสิ่งใด (ยกเว้นที่ว่าง) ภายใต้กิ่งไม้ ทำซ้ำกฎเหล่านี้ให้ผล /\ /\/\ /\ /\ /\/\/\/\ /\ /\ /\/\ /\/\ etc... ( แรงบันดาลใจจาก ViHart ) เขียนโปรแกรมหรือฟังก์ชั่นที่รับจำนวนเต็มบวก N และพิมพ์บรรทัด N แรกของรูปแบบนี้ไปยัง stdout โดยไม่มีช่องว่างนำหน้าหรือต่อท้ายเกินกว่าที่จำเป็น ตัวอย่างเช่นถ้าอินพุตเป็น1เอาต์พุตต้องเป็น /\ หากอินพุตเป็น2เอาต์พุตจะต้องเป็น /\ /\/\ หากอินพุตเป็น8เอาต์พุตจะต้องเป็น /\ /\/\ /\ /\ /\/\/\/\ /\ /\ /\/\ /\/\ /\ /\ /\ /\ /\/\/\/\/\/\/\/\ และอื่น …

20
สร้างหมายเลข Ulam
ได้รับจำนวนเต็มn(ที่n < 10001) เป็น input เขียนโปรแกรมที่ออกจะเป็นครั้งแรกที่ตัวเลขลามn หมายเลข Ulam ถูกกำหนดดังนี้: U 1 = 1, U 22 = สำหรับn > 2U nเป็นจำนวนเต็มที่น้อยที่สุดซึ่งมากกว่า U n-1นั่นคือผลรวมของคำสองคำที่แตกต่างกันก่อนหน้านี้ในทางเดียว ตัวอย่างเช่น U 3คือ3(2 + 1), U 4คือ4(3 + 1) (โปรดทราบว่า (2 + 2) ไม่นับเป็นเงื่อนไขที่ไม่ชัดเจน) และ U 5คือ6(U 5ไม่ใช่ 5 เนื่องจาก 5 สามารถแสดงเป็น 2 + 3 หรือ 4 + …

2
จำนวนผลลัพธ์ตัวเลขที่เป็นไปได้ของการวงเล็บ 2 ^ 2 ^ … ^ 2
พิจารณาการแสดงออก2^2^...^2กับผู้ประกอบการn ^ผู้ประกอบการ^หมายถึงการยกกำลัง ("ถึงพลังของ") สมมติว่ามันไม่ได้มีค่าเริ่มต้นของการมีเพศสัมพันธ์ที่ไม่ดีดังนั้นการแสดงออกต้องได้รับการวงเล็บอย่างเต็มที่เพื่อให้ชัดเจน หลายวิธีที่จะ parenthesize การแสดงออกจะได้รับจากหมายเลขที่คาตาลัน C_n=(2n)!/(n+1)!/n! บางครั้ง parenthesizations ที่แตกต่างกันให้ผลเป็นตัวเลขเดียวกันตัวอย่างเช่น(2^2)^(2^2)=((2^2)^2)^2ดังนั้นจำนวนของผลเป็นตัวเลขที่เป็นไปได้ที่แตกต่างกันสำหรับการกำหนดnน้อยกว่าสำหรับทุกC_n n>1ลำดับเริ่มต้น1, 1, 2, 4, 8, ...เมื่อเทียบกับหมายเลขคาตาลัน1, 2, 5, 14, 42, ... ปัญหาที่เกิดขึ้นคือการเขียนโปรแกรมที่เร็วที่สุด (หรือฟังก์ชั่น) ที่ยอมรับnเป็น input และส่งกลับจำนวนของผลเป็นตัวเลขที่แตกต่างกันเป็นไปได้ของการแสดงออก2^2^...^2กับผู้ประกอบการn ^ประสิทธิภาพไม่ควรลดลงอย่างมีนัยสำคัญเมื่อnโตขึ้นดังนั้นการคำนวณโดยตรงของเสาพลังงานสูงอาจเป็นความคิดที่ไม่ดี

30
เด็ด ๆ
ลองนิยามf n (k)เป็นผลรวมของเงื่อนไขkแรกของตัวเลขธรรมชาติ[1, ∞)โดยที่แต่ละตัวเลขซ้ำnครั้ง k | 0 1 2 3 4 5 6 7 8 9 --------+------------------------------------------------- f_1(k) | 0 1 3 6 10 15 21 28 36 45 deltas | +1 +2 +3 +4 +5 +6 +7 +8 +9 --------+------------------------------------------------- f_2(k) | 0 1 2 4 6 9 12 …

15
ตัวหารและตัวเลขแย่
บทนำ ในโลกที่แปลกประหลาดของตัวเลขจำนวนเต็มตัวหารเป็นเหมือนสินทรัพย์และพวกเขาใช้เรียกว่า "รวย" ตัวเลขที่มีตัวหารมากกว่าการกลับรายการในขณะที่พวกเขาเรียกว่า "ไม่ดี" คนที่มีตัวหารน้อยกว่าการกลับรายการ ยกตัวอย่างเช่นหมายเลข240124012401มีห้าตัวหาร: 1,7,49,343,24011,7,49,343,24011,7,49,343,2401 , ในขณะที่การพลิกกลับของ104210421042มีเพียงสี่: 1,2,521,10421,2,521,10421,2,521,1042 1042 ดังนั้น240124012401เรียกว่าอุดมไปด้วยจำนวนขณะที่104210421042ยากจนจำนวน ตามคำจำกัดความนี้เราสามารถสร้างสองจำนวนเต็มดังนี้ (here we list the first 25 elements of the sequences) Index | Poor | Rich -------|------|------- 1 | 19 | 10 2 | 21 | 12 3 | 23 | 14 4 | 25 | 16 …

12
ในการขับขี่ที่เป็นหลุมเป็นบ่อ
งานของคุณคือการเขียนโปรแกรมคอมพิวเตอร์หรือฟังก์ชั่นที่ใช้รายการจำนวนเต็มบวกอย่างน้อย 2 ตัวและกำหนดว่าเป็น "ซิกแซก" หรือไม่ ลำดับคือคดเคี้ยวไปมาถ้าหากตัวเลขสลับกันในการมีขนาดใหญ่และเล็กกว่าจำนวนที่มาก่อนพวกเขา ตัวอย่างเช่นและเป็นซิกแซก แต่และไม่ใช่[1,2,0,3,2][1,2,0,3,2][1,2,0,3,2][ 1 , 2 , 0 , 0 , 3 , 1 ] [ 1 , 2 , 3 , 1 ][4,2,3,0,1][4,2,3,0,1][4,2,3,0,1][ 1 , 2 , 0 , 0 , 3 , 1 ][1,2,0,0,3,1][1,2,0,0,3,1][ 1 , 2 , 3 , 1 ][1,2,3,1][1,2,3,1] สำหรับการตัดสินใจของคุณคุณควรส่งออกหนึ่งในสองค่าที่สอดคล้องกันที่แตกต่างกันสำหรับแต่ละความเป็นไปได้ …

10
Interleaving Sequences
Interleaved sequences แสดงถึงการรวมของลำดับบางอย่างโดยพลการ ลำดับ interleaved สามารถทำได้โดยการผนวกองค์ประกอบไปยังรายการหนึ่งโดยหนึ่งจากจำนวนรายการบางรายการเลือกองค์ประกอบต่อไปจากบางรายการในแต่ละครั้ง ดังนั้นลำดับ interleaved จะมีองค์ประกอบเดียวกันทั้งหมดของรายการทั้งหมดรวมกันในลำดับที่สอดคล้องกับรายการทั้งหมด interleaving เพียง 1 รายการเท่านั้นคือรายการเดียวกัน ท้าทาย ความท้าทายของคุณคือการสร้างฟังก์ชั่น / โปรแกรมที่ใช้ลำดับและเอาท์พุทที่เป็นไปได้ทั้งหมดของลำดับนั้น ตัวอย่าง Input: [1, 2], [3, 4] Output: [1, 2, 3, 4] [1, 3, 2, 4] [1, 3, 4, 2] [3, 1, 2, 4] [3, 1, 4, 2] [3, 4, 1, 2] Input: [1, …

13
เกมเฉพาะของ Conway
โดยเฉพาะคอนเวย์ PRIMEGAME นี่คืออัลกอริทึมที่คิดค้นโดย John H. Conway เพื่อสร้างช่วงเวลาโดยใช้ลำดับหมายเลข 14 จำนวน: A B C D E F G H I J K L M N 17 78 19 23 29 77 95 77 1 11 13 15 15 55 -- -- -- -- -- -- -- -- -- -- -- -- -- …

2
ส่งออกลำดับ Goodstein
(นี่อาจจะค่อนข้างคลาสสิก แต่นี่เป็นโพสต์แรกของฉันที่นี่ดังนั้นฉันยังไม่พร้อมสำหรับสิ่งแฟนซียัง) ลำดับ Goodsteinมีการกำหนดจำนวนการป้อนข้อมูลดังต่อไปนี้: เลือกหมายเลขเริ่มต้นn , ให้b = 2 และทำซ้ำ: เขียนnในสัญกรณ์ทางพันธุกรรมฐานข แทนที่ทั้งหมด ( b ) s เป็น ( b +1) s ในnและ substract 1 ส่งออกการประเมินผลทศนิยมใหม่ของn เพิ่มข สัญกรณ์ฐานทางพันธุกรรมคือการสลายตัวของจำนวนที่พื้นฐานเป็นจำนวนที่มากขึ้นที่จะปรากฏ ตัวอย่าง: 83 ใน HB3: 3^(3+1)+2 226 ใน HB2: 2^(2^(2+1))+2^(2+1)+2 ลำดับ Goodstein สิ้นสุดที่ 0เสมอ แต่พวกเขามักจะมีขนาดค่อนข้างใหญ่เร็วมากดังนั้นจึงไม่ขอให้แสดงลำดับที่สมบูรณ์ งาน: ให้หมายเลขอินพุตในรูปแบบที่สมเหตุสมผลงานของคุณคือส่งออกลำดับ Goodstein สำหรับหมายเลขนี้อย่างน้อยก็จนกว่าจะถึง 10 ^ 25 หรือ 0 …

12
ลำดับแหวนโอลิมปิก
ท้าทาย: รับจำนวนเต็มดัชนีnออกรายการn'th ในลำดับนี้หรือส่งออกลำดับถึงและรวมถึงดัชนีn: 25,25,7,28,29,20,21,22,23,14,35,26,7,28,29,20,16,29,12,15,28,21,14,17,30,13,16,29,12,15,28,21,10,6,12,18,15,11,7,13,19,17,13,9,15,21,18,14,10,16,22,19,15,11,17,23,20,16,12,18,24,21,17,13,19,25,23,19,15,21,27,24,20,16,22,28,25,21,17,23,29,16,13,9,15,21,18,14,10,16,22,20,16,12,18,24,21,17,13,19 ลำดับนี้ทำงานอย่างไร หมายเหตุ: ในคำอธิบายนี้ดัชนีnจะมีดัชนี1 ดัชนี ใส่ตัวเลขที่1ผ่านxสองเส้นของความยาวn*6 - 1ที่xขึ้นอยู่กับการย้ำในปัจจุบันและความยาวของตัวเลขที่ใช้แล้วสรุปตัวเลขของn'รี th / ขวาสุดแหวนโอลิมปิกของทั้งสองสาย หมายเลขแรกในลำดับจะถูกคำนวณดังนี้: The length of the lines are 5 (because 1*6 - 1 = 5): 12345 67891(0) Then leave the digits in an Olympic Rings pattern: 1 3 5 7 9 And sum them: 1+3+5+7+9 = 25 …

23
ลำดับเรขาคณิตน้อยกว่า
Haskellมีคุณสมบัติที่ประณีต (- มอง) ซึ่งคุณสามารถให้ตัวเลขสามตัวและสามารถอนุมานลำดับเลขคณิตจากพวกเขา ยกตัวอย่างเช่นเทียบเท่ากับ[1, 3..27][1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27] มันยอดเยี่ยมและทั้งหมดยกเว้นลำดับเลขคณิตค่อนข้าง จำกัด นอกจากนี้pfft การคูณของมันอยู่ที่ไหน มันจะไม่เย็นถ้ามันไม่ได้ลำดับเรขาคณิตเช่น[1, 3..27]กลับมา[1, 3, 9, 27]? ท้าทาย เขียนโปรแกรม / ฟังก์ชั่นที่ใช้เวลาสามจำนวนเต็มบวก, ขและคและผลที่xเป็นจำนวนเต็มยิ่งใหญ่ที่สุด≤ คที่สามารถแสดงเป็นที่nเป็นจำนวนเต็มบวก[a, b, b × (b ÷ a), b × (b ÷ a)2, ..., x]b × (b ÷ …


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