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

การเรียงสับเปลี่ยนเป็นการเรียงลำดับรายการวัตถุบางรายการโดยเฉพาะ ปัญหาที่ติดแท็กด้วยการเปลี่ยนแปลงมักเกี่ยวข้องกับการค้นหาหรือสร้างการเรียงสับเปลี่ยน

30
เรียงลำดับได้อย่างน่าเชื่อถือ
รับรายการจำนวนเต็มบวกที่มีรายการที่แตกต่างกันอย่างน้อย 3 รายการส่งออกการเรียงสับเปลี่ยนของรายการที่ไม่เรียงลำดับจากน้อยไปมากหรือมากไปหาน้อย ตัวอย่าง 1,2,3 -> 2,1,3 or 3,1,2 or 1,3,2 or 2,3,1 1,2,3,3 -> 2,1,3,3 or 3,1,2,3 or 1,3,2,3 etc.. ขอบคุณ @Arnauld และ @NoOneIsHere สำหรับชื่อ!

16
สุ่มกอล์ฟประจำวัน # 8: สุ่มรายการที่ไม่มีที่สิ้นสุด
เกี่ยวกับซีรี่ส์ ก่อนอื่นคุณอาจปฏิบัติเช่นนี้กับการแข่งขันกอล์ฟอื่น ๆ และตอบคำถามโดยไม่ต้องกังวลกับซีรีย์เลย อย่างไรก็ตามมีลีดเดอร์บอร์ดสำหรับทุกความท้าทาย คุณสามารถค้นหาลีดเดอร์พร้อมกับข้อมูลบางอย่างเพิ่มเติมเกี่ยวกับซีรีส์ในโพสต์แรก หลุม 8: สุ่มรายการที่ไม่มีที่สิ้นสุด คุณควรเขียนฟังก์ชันหรือโปรแกรมที่รับรายการอนันต์เป็นอินพุตและส่งคืนเวอร์ชันแบบสับของรายการนั้น เกี่ยวกับ I / O ไม่มีที่สิ้นสุด มีหลายวิธีที่คุณสามารถรับอินพุตและสร้างเอาต์พุตสำหรับความท้าทายนี้: คุณสามารถเลือกรายการจำนวนเต็มบวกหรือการแทนสตริงดังกล่าวหรือสตริงหรือรายการอักขระ ASCII ที่พิมพ์ได้ (0x20 ถึง 0x7E, รวมไว้ด้วย) รูปแบบผลลัพธ์ต้องตรงกับรูปแบบอินพุต ฉันจะดูข้อมูลว่า "รายการ" ต่อจากนี้ไปไม่ว่าคุณจะเลือกตัวเลือกใด คุณสามารถอ่านรายการจากอินพุตมาตรฐานแบบไม่สิ้นสุดและเขียนเอาต์พุตอย่างต่อเนื่องไปยังเอาต์พุตมาตรฐานแบบไม่สิ้นสุด การแก้ปัญหาไม่ควรขึ้นอยู่กับค่าเฉพาะหรือลำดับของค่าใด ๆ เพื่อให้แน่ใจว่าเอาต์พุตสตรีมจะถูกเขียนและล้างข้อมูลอย่างสม่ำเสมอ (เช่นคุณไม่สามารถเขียนเอาต์พุตเมื่อใดก็ตามที่มี5ในรายการอินพุต) แน่นอนถ้าคุณอ่านการแทนค่าสตริงของรายการคุณจะต้องรอจนกว่าจะเจอตัวคั่นรายการ ในภาษาที่รองรับพวกเขาคุณสามารถเขียนฟังก์ชั่นที่รับและส่งคืนรายการหรือสตริงที่ไม่มีที่สิ้นสุดที่ขี้เกียจ ในภาษาที่สนับสนุนพวกเขาคุณอาจใช้เครื่องมือสร้างที่ไม่มีที่สิ้นสุดซึ่งใช้ตัวสร้างอื่นเป็นอินพุต หรือคุณสามารถเขียนฟังก์ชั่นที่ไม่มีข้อโต้แย้งและคืนค่าเอาต์พุตหนึ่งค่าในแต่ละครั้งที่เรียกใช้ ในกรณีนี้คุณสามารถสันนิษฐานได้ว่าฟังก์ชั่นได้รับการกำหนดซึ่งจะไม่มีข้อโต้แย้งและส่งกลับค่าการป้อนข้อมูลต่อไปในแต่ละครั้งที่มันถูกเรียก คุณสามารถเลือกชื่อของฟังก์ชันนั้นได้อย่างอิสระ คุณอาจสมมติว่าโปรแกรมของคุณทำงานตลอดไปและมีหน่วยความจำที่ไม่มีที่สิ้นสุด (เป็นไปได้ที่จะแก้ปัญหานี้ด้วยจำนวนหน่วยความจำที่ จำกัด แต่สิ่งนี้หมายความว่าคุณได้รับอนุญาตให้หน่วยความจำรั่วไหล) เกี่ยวกับการสุ่ม สำหรับค่าใด ๆvที่อ่านที่ตำแหน่งiของอินพุตไม่สิ้นสุดจะต้องมีความเป็นไปได้ในเชิงบวกที่จะสิ้นสุดในตำแหน่งใด ๆi-9ถึงi +9ของเอาต์พุตแบบไม่ จำกัด (เว้นแต่ตำแหน่งนั้นจะเป็นค่าลบ ) …

10
มดบนบันทึกธรรมชาติ
นี่เป็นความท้าทายเริ่มต้นที่ดีและเป็นนักฆ่าเวลาที่ดี ฉันเพียงแค่พูดว่า - บันทึก - ธรรมชาติเพราะชื่อสั้นเกินไปนี่ไม่มีส่วนเกี่ยวข้องกับลอการิทึม รับ 2 ตัวแปร: nจำนวนของมด wความกว้างของการเข้าสู่ระบบ การส่งออกเข้าสู่ระบบของความกว้างwกับnมด (ตัวอย่างแสดงให้เห็นw=3,n=6 ) | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ …

27
รายการพาร์ทิชันที่สั่งซื้อทั้งหมดของ n
ความท้าทายคือการแสดงรายการพาร์ทิชันทั้งหมดที่สั่งซื้อ (องค์ประกอบ (combinatorics)) nของจำนวนเต็มบวกให้ เหล่านี้เป็นรายการของตัวเลขจาก1การที่มีผลรวมเป็นn nตัวอย่างเช่นอินพุตที่กำหนดn = 4ผลลัพธ์ควรเป็น: 4 1, 3 3, 1 2, 2 2, 1, 1 1, 2, 1 1, 1, 2 , 1, 1, 1, 1, 1 ผลลัพธ์สามารถอยู่ในลำดับใดก็ได้ แต่ต้องมีพาร์ติชันที่สั่งซื้อแต่ละครั้ง ซึ่งหมายความว่าสำหรับn = 4, [1, 1, 2], [1, 2, 1]และ[2, 1, 1]ทุกคนจะต้องเป็นส่วนหนึ่งของผล นี่คือรหัส JavaScript ของฉันเองซึ่งประสบความสำเร็จในสิ่งนี้: function range(n) { for …

12
จำนวนรอบของการเปลี่ยนแปลง
พิจารณาการเปลี่ยนแปลงของจำนวนเต็ม1, ... n, เช่นนี้สำหรับn = 6: [5,2,4,3,6,1] ถ้าคุณดูการเปลี่ยนแปลงเช่นการทำแผนที่จาก[1,2,3,4,5,6]ไป[5,2,4,3,6,1], การเปลี่ยนแปลงสามารถ decomponsed เข้าไปเคลื่อนรอบ รอบเป็นส่วนย่อยขององค์ประกอบที่แมปกัน ยกตัวอย่างเช่น1ได้รับการแมปไป5ซึ่งได้รับการแมปไปซึ่งได้รับการแมปกลับไป6 ดังนั้นหนึ่งรอบเป็น1 [1,5,6]รอบอื่น ๆและ[2] [3,4]ดังนั้นจำนวนรอบ3สำหรับการเปลี่ยนแปลงนี้คือ โดยทั่วไปรอบของการเปลี่ยนแปลงที่จะไม่ซ้ำกัน (ถึงการสั่งซื้อ) และจำนวนรอบสำหรับการเปลี่ยนแปลงของขนาดที่nแตกต่างกันจากการ1n ความท้าทาย รับการเปลี่ยนแปลงที่ไม่ว่างเปล่าส่งออกจำนวนรอบ การป้อนข้อมูลเป็นอาร์เรย์ที่เกิดขึ้นจากnจำนวนเต็ม1, 2, ... , ที่n n > 0จำนวนเต็มแต่ละค่าเกิดขึ้นเพียงครั้งเดียว ลำดับที่ปรากฏจะกำหนดการเปลี่ยนลำดับตามตัวอย่างด้านบน แทนที่จะเป็นอาร์เรย์คุณสามารถใช้รายการสตริงที่มีตัวคั่นระหว่างตัวเลขการป้อนข้อมูลแยกต่างหากสำหรับแต่ละหมายเลขหรืออะไรก็ได้ที่สมเหตุสมผล สำหรับการเปลี่ยนแปลงของขนาดnแทนที่จะเป็น 1 ชุดตามของจำนวนเต็ม1, ... , nคุณสามารถอย่างต่อเนื่องใช้ชุด 0-based 0, ... n-1, ถ้าเป็นเช่นนั้นโปรดระบุไว้ในคำตอบของคุณ รหัสควรใช้งานnได้สูงสุด20ในเวลาที่เหมาะสมพูดน้อยกว่าหนึ่งนาที รหัสกอล์ฟ อนุญาตบิวอินได้ทั้งหมด กรณีทดสอบ สิ่งนี้จะถือว่าอินพุตแบบอิงอาร์เรย์ 1 ตัว …

27
จัดเรียงลำดับใหม่
บทนำ ลองสังเกตลำดับต่อไปนี้ (จำนวนเต็มไม่เป็นลบ): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, ... ตัวอย่างเช่นลองหาตัวเลขสามตัวแรก 0, 1, 2เหล่านี้เป็น หมายเลขที่ใช้ในลำดับนี้สามารถสั่งซื้อได้หกวิธี: 012 120 021 201 102 210 ดังนั้นขอบอกว่าF (3) = 6 อีกตัวอย่างหนึ่งคือF (12) สิ่งนี้มีตัวเลข: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 หรือรุ่นที่ต่อกัน: …

24
ความท้าทาย ogl-edocf
อินพุต ไม่ว่างเปล่าสตริงสับประกอบด้วยอักขระ ASCII ในช่วง ][ 32..126 ][32..126][32..126] เอาท์พุต เอาต์พุตได้มาจากการใช้การหมุนต่อเนื่องกับสตริงอินพุต สำหรับแต่ละตัวอักษร ( [a-zA-Z]) ในสตริงอินพุตให้เปลี่ยนจากซ้ายไปขวา: ถ้าตัวอักษรเป็นตัวพิมพ์ใหญ่หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางซ้าย หากตัวอักษรเป็นตัวพิมพ์เล็กให้หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางขวา ตัวอย่าง อินพุต: "Cb-Ad" อักษรตัวแรกคือ " C " เราควรหมุนไปทางซ้าย แต่ไม่มีตัวละครอยู่ก่อนหน้านี้ " C " ดังนั้นจึงไม่มีอะไรจะหมุน ตัวอักษรถัดไปคือ " b " เราหมุน " C " ไปทางขวา เนื่องจากเป็นอักขระตัวเดียวจึงไม่เปลี่ยนแปลง อักขระ " - " ไม่เรียกใช้การหมุนใด ๆ เนื่องจากไม่ใช่ตัวอักษร ตัวอักษรถัดไปคือ " A " เราหมุน …
22 code-golf  string  code-golf  string  code-golf  string  parsing  brainfuck  code-challenge  python  hello-world  error-message  code-golf  string  code-golf  number  integer  counting  subsequence  code-golf  string  cipher  code-golf  array-manipulation  arithmetic  integer  matrix  code-golf  math  sequence  code-golf  restricted-source  pi  popularity-contest  cops-and-robbers  polyglot  popularity-contest  cops-and-robbers  polyglot  code-golf  file-system  king-of-the-hill  code-golf  number  sequence  integer  rational-numbers  string  code-challenge  source-layout  code-golf  ascii-art  king-of-the-hill  code-golf  array-manipulation  sorting  code-golf  string  code-golf  restricted-source  source-layout  tips  math  code-challenge  permutations  logic-gates  code-golf  number  random  integer  code-golf  math  code-golf  math  number  decision-problem  king-of-the-hill  python  board-game  code-challenge  brainfuck  busy-beaver  code-golf  number  cops-and-robbers  polyglot  obfuscation  answer-chaining  code-golf  number  integer  conversion  code-golf  string  parsing  code-golf  ascii-art  number  king-of-the-hill  javascript  code-golf  source-layout  radiation-hardening  code-golf  array-manipulation  matrix  code-golf  string  graph-theory  code-golf  array-manipulation  decision-problem  code-golf  string  ascii-art  code-golf  string  code-golf  array-manipulation 

3
ฉันต
หมายเหตุ: ชื่อของคำถามนี้ควรเป็น "Loop It" แต่เนื่องจากหัวเรื่องต้องมีอย่างน้อย 15 ตัวอักษรจึงมีช่องว่างที่มองไม่เห็น หมายเหตุนี้เป็นสิ่งที่ท้าทายสามารถค้นหาได้ ท้าทาย เมื่อพิจารณารายการของจุดอินทิกรัลเฉพาะที่ไม่ซ้ำใครในเครื่องบินให้หารูปหลายเหลี่ยมที่มีจุดยอดเป็นจุดเหล่านั้นซึ่งไม่ได้ตัดกันด้วยตนเอง รายละเอียด ในฐานะที่เป็นอินพุตคุณสามารถรับเช่นสองรายการโดยแต่ละค่า x- และ y- พิกัดหรือรายการของคู่ รายการอินพุตมีอย่างน้อย 3 คะแนน โปรดทราบว่านี่หมายความว่าจะไม่มีทางแก้ปัญหาที่ไม่เหมือนใคร รายการของอินพุตสามารถสันนิษฐานได้ว่าไม่เป็นแบบเชิงเส้น (จุดไม่สามารถมีอยู่ในหนึ่งบรรทัด) ซึ่งหมายความว่ามีรูปหลายเหลี่ยมที่ไม่ตัดกันด้วยตนเอง มุมที่จุดสุดยอดแต่ละจุดนั้นไม่เจาะจงซึ่งรวมถึง 180 ° สำหรับการป้อนข้อมูลของความยาวnเอาท์พุทควรจะมีการเปลี่ยนแปลง(p1,p2,p3,...,pn)ของ(1,2,3,...,n)ที่kรายการ -th pkหมายถึงpจุด -th ในรายการการป้อนข้อมูล ซึ่งหมายความว่าเรามีเส้นจากp1ที่จะp2สายจากp2การp3ฯลฯ เช่นเดียวกับสายจากไปpn p1(นอกจากนี้คุณยังสามารถใช้ดัชนีที่เป็น 0) หรือคุณสามารถส่งออกรายการของจุดอินพุตตามลำดับที่ถูกต้อง ตัวอย่าง สมมติว่าเรามีคะแนน[(0,0),(0,1),(1,0),(-1,0),(0,-1)]และเราต้องการเป็นตัวแทนเส้นทางต่อไปนี้: ซึ่งหมายความว่าเราจะส่งออกรายการ [5,1,4,2,3] ต่อไปนี้เป็นคำแนะนำเพิ่มเติมลอง (ฉันขอแนะนำให้ดูที่แผนการที่สอดคล้องกันเพื่อตรวจสอบเป้าหมาย) Triangle [(0,0),(0,1),(1,0)] S-Curve [(0,0),(0,1),(0,2),(0,3),(0,4),(1,0),(2,0),(2,1),(2,2),(2,3),(2,4),(3,4),(4,0),(4,1),(4,2),(4,3),(4,4)] L-Shape [(4,0),(1,0),(3,0),(0,0),(2,0),(0,1)] Menger Sponge …

13
Codegolf Hafnian
ความท้าทายคือการเขียน codegolf สำหรับHafnian ของเมทริกซ์ Hafnian ของเมทริกซ์2n-by- 2nสมมาตรAหมายถึง: นี่ S 2nหมายถึงชุดของพีชคณิตทั้งหมดของจำนวนเต็มจาก1การที่เป็น2n[1, 2n] ลิงค์วิกิพีเดียพูดถึงการฝึกหัด adjacency แต่รหัสของคุณควรใช้กับเมทริกซ์อินพุตสมมาตรที่มีมูลค่าจริง ๆ สำหรับผู้ที่สนใจในแอปพลิเคชันของHafnianลิงก์mathoverflow จะกล่าวถึงเพิ่มเติม รหัสของคุณสามารถป้อนข้อมูลได้ตามต้องการและให้ผลลัพธ์ในรูปแบบที่สมเหตุสมผล แต่โปรดรวมคำตอบของคุณไว้ในตัวอย่างการทำงานเต็มรูปแบบรวมถึงคำแนะนำที่ชัดเจนเกี่ยวกับวิธีการป้อนรหัสของคุณ อินพุตเมทริกซ์เป็นรูปสี่เหลี่ยมจัตุรัสเสมอและจะมีค่าสูงสุด 16 คูณ 16 ไม่จำเป็นต้องจัดการเมทริกซ์ว่างเปล่าหรือเมทริกซ์ของมิติคี่ การดำเนินการอ้างอิง นี่คือตัวอย่างโค้ดไพ ธ อนจาก Mr. Xcoder from itertools import permutations from math import factorial def hafnian(matrix): my_sum = 0 n = len(matrix) // 2 for sigma …

12
ระบายสีเสาให้ฉัน
ให้บอกว่างานของคุณคือการทาสีเสาและลูกค้าขอให้คุณวาดเสาที่มี 4 ส่วนสีแดงและ 3 ส่วนสีเหลือง คุณสามารถทำได้โดยง่ายดังนี้ r y r y r y r มีแถบสีเหลืองและสีแดง ตอนนี้ช่วยบอกลูกค้าของคุณขอให้คุณวาดเสามี 2 ส่วนสีแดง 2 ส่วนสีเหลืองและ1 ส่วนสีเขียว มีสองวิธีที่คุณสามารถทาสีเสาของคุณ g y r y r y g r y r y r g y r y r y g r y r y r g g r y r …

30
รับตัวเลขสุ่ม n ตัวเลขด้วยตัวเลขที่แตกต่างกันและไม่ใช่ 0
ฉันอ่านคำถามนี้และคิดว่ามันจะเป็นการท้าทายที่ดี งาน ให้อินพุต0<n<10สร้างตัวเลขสุ่มด้วย ตัวเลขที่แน่นอน ครั้งแรกไม่ได้ 0 ดังนั้น f(n)>10**(n-1)-1 ตัวเลขที่แตกต่างกัน เกณฑ์การชนะ นี่คือรหัส - กอล์ฟเพื่อให้ได้รหัสที่สั้นที่สุด สุ่ม ฉันหมายถึงการกระจายแบบสุ่มอย่างสม่ำเสมอ ดังนั้นจากมุมมองของโปรแกรมแต่ละหมายเลขที่เป็นไปได้มีโอกาสเดียวกัน หากภาษาที่คุณกำลังเขียนมีตัวสร้างตัวเลขสุ่มแปลก ๆ ก็ไม่เป็นไรที่จะใช้มัน ตัวอย่าง รายการค่าที่จะเลือกแบบสุ่มสำหรับn=2คือ: [10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, …
22 code-golf  number  random  grid  game  king-of-the-hill  javascript  code-golf  arithmetic  statistics  code-golf  math  code-golf  math  code-golf  string  palindrome  code-golf  string  interactive  code-golf  quine  polyglot  code-golf  string  stack-exchange-api  code-golf  number-theory  decision-problem  code-golf  tips  code-golf  string  internet  code-golf  graphical-output  image-processing  fractal  code-golf  ascii-art  geometry  hexagonal-grid  code-golf  string  restricted-source  hello-world  code-golf  game  code-golf  cipher  code-golf  permutations  cops-and-robbers  permutations  cops-and-robbers  code-golf  internet  stack-exchange-api  code-golf  ascii-art  random  code-golf  tips  code-golf  ascii-art  code-golf  code-golf  kolmogorov-complexity  code-golf  string  unicode  code-golf  number  sequence  primes  palindrome  code-golf  game  decision-problem  code-golf  math  geometry  code-golf  graphical-output  interactive  code-golf  set-partitions  code-golf  number  arithmetic  restricted-source  code-golf  decision-problem  python  recursion  code-golf  ascii-art  code-golf  source-layout  code-golf  function  recursion  functional-programming  code-golf  game  combinatorics  permutations  code-golf  string  file-system  code-golf  string  hashing  code-golf  stack-exchange-api  code-golf  string  code-golf  math  number  arithmetic  polyglot 

25
Anagrams Quine! (ด้ายของตำรวจ)
นี่คือด้ายของตำรวจ สำหรับด้ายโจรคลิกที่นี่ ภารกิจของตำรวจ ก่อนเขียนควินินในภาษาที่คุณเลือก จากนั้นก็ควักควินิน อย่าลืมทำเช่นนี้เพราะพวกโจรจะพยายามถอดรหัสและหาซอร์สโค้ดต้นฉบับ! โปรดทราบว่ารหัสสัญญาณรบกวนไม่จำเป็นต้องทำงาน โพสต์คำตอบในกระทู้นี้ รวมภาษาจำนวนไบต์และรหัสสัญญาณรบกวน โปรแกรมของคุณอาจไม่พิมพ์ไปที่ STDERR นี่คือตัวอย่างของการส่งตำรวจ: Python ขนาด 29 ไบต์ nt _%=_r;_riinp;pr_='t _%%%_' ภารกิจของโจร สำหรับด้ายโจรคลิกที่นี่ ส่งที่ปลอดภัย หากการส่งของคุณยังไม่ได้รับการถอดรหัสหลังจากหนึ่งสัปดาห์ของการโพสต์คุณสามารถเพิ่มการแก้ปัญหาและระบุว่ามันปลอดภัย ถ้าคุณทำไม่ได้ผลงานของคุณอาจยังแตก เกณฑ์การให้คะแนน นี่คือโค้ดกอล์ฟดังนั้นผู้ใช้ที่ส่งอย่างปลอดภัยด้วยจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะในส่วนนี้ ลีดเดอร์บอร์ด นี่คือตัวอย่างสแต็กเพื่อสร้างกระดานข้อความสำหรับความท้าทายนี้ เพื่อให้แสดงอย่างถูกต้องโปรดจัดรูปแบบการส่งของคุณดังนี้: # Language Name, N bytes ... other stuff ... หากการส่งของคุณแตกโปรดจัดรูปแบบดังนี้: # Language Name, N bytes, [Cracked!](link) ... other stuff ... หากการส่งของคุณปลอดภัยให้จัดรูปแบบดังนี้: …

5
เรียงลำดับรายการด้วย Swaps และ Pops
พิจารณารายการแบบสุ่มของจำนวนเต็ม 1 ถึง N คุณต้องการเรียงลำดับโดยใช้การกระทำต่อไปนี้เท่านั้น: สลับองค์ประกอบรายการแรกและสุดท้าย (S) Popปิดองค์ประกอบแรกและผนวกไปยังจุดสิ้นสุดของรายการ (P) สิ่งนี้เป็นไปได้เสมอเพราะรายการใด ๆ สามารถเรียงลำดับด้วยองค์ประกอบที่อยู่ติดกันเพียงพอ การใช้ S และ P คุณสามารถสลับองค์ประกอบที่อยู่ติดกันโดยการเรียก P จนกระทั่งทั้งสององค์ประกอบที่มีปัญหาเป็นรายการแรกและสุดท้ายในรายการจากนั้นเรียก S เพื่อแลกเปลี่ยนพวกเขาแล้วเรียก P อีกครั้งจนกว่าพวกเขาจะอยู่ในดัชนีเดิม ) แต่ในแง่ของจำนวนการดำเนินการ S และ P วิธีนี้ไม่น่าจะเหมาะสมที่สุดสำหรับรายการส่วนใหญ่ ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในการเรียงสับเปลี่ยนตัวเลขจาก 1 ถึง N (N> 1) สามารถกำหนดเป็นรายการหรือสตริงหรืออะไรก็ได้ที่สะดวก มันควรส่งลำดับของ S และ P ที่จะเรียงลำดับการเรียงสับเปลี่ยนเมื่อใช้จากซ้ายไปขวา ลำดับนี้ไม่จำเป็นต้องสั้นที่สุด แต่จะสั้นกว่านั้นจะดีกว่า (ดูเกณฑ์การให้คะแนน) ตัวอย่าง หากอินพุตเป็น[2, 1, 3]เอาต์พุตอาจเป็นSPเพราะ S …

9
ฉันเห็น BIDMAS ของคุณและสร้าง BADMIS ให้คุณ
ฉันเห็น BIDMAS ของคุณและสร้าง BADMIS ให้คุณ ท้าทาย กำหนดตัวเลขที่มีตัวดำเนินการระหว่าง: "5 + 4 * 9/3 - 8" ให้ส่งกลับผลลัพธ์ที่เป็นไปได้ทั้งหมดของนิพจน์สำหรับการเรียงลำดับของการดำเนินการพื้นฐานทุกครั้ง: [/, *, +, -] กฎระเบียบ ช่องโหว่มาตรฐานต้องห้าม I / O ต้องป้อนข้อมูลด้วยการดำเนินการมัด แต่ที่ง่ายที่สุด (สตริงหรืออาร์เรย์) คุณไม่จำเป็นต้องสนับสนุนผู้ประกอบการเอก (เช่น "-3 * 8 / +2") จำนวนเต็มสามารถแทนที่ด้วยการลอยสำหรับภาษาที่แจงโดยปริยายประเภท (เช่น 45 ⟶ 45.0) ผลลัพธ์จะต้องเป็นผลลัพธ์ที่เป็นไปได้ทั้งหมดของการแสดงออกไม่มีรูปแบบหรือคำสั่งที่ระบุ อินพุตทั้งหมดใช้งานได้ (เช่นไม่จำเป็นต้องจัดการกับ "7/3 + *") นี่ก็หมายความว่าคุณไม่จำเป็นต้องหารด้วยศูนย์ ผู้ประกอบการทุกคนมีความสัมพันธ์ทางด้านซ้ายดังนั้น "20/4/2" = "(20/4) …

8
สร้างปิรามิดนี้
ปิรามิดของคุณ ปิรามิดที่ฉันต้องการให้คุณสร้างทำจากลูกบาศก์ทั้งหมด มันมี 24 ชั้นและ N THชั้นจากด้านบนมี N 2ก้อนจัดใน N จาก N ตาราง ปิรามิดมีลักษณะดังนี้: ในการสร้างปิรามิดคุณจะต้องมีลูกบาศก์ คุณจะได้รับ 4900 ลูกบาศก์จัดเรียงใน 70 โดย 70 ตารางที่มีลักษณะเช่นนี้: (โอเคฉันยอมรับว่ารูปภาพของสแควร์ไม่จำเป็นเลย) ตั้งแต่ 1 2 + 2 2 + 3 2 + ... + 24 2 = 70 2คุณมีจำนวนลูกบาศก์ที่ถูกต้องในการสร้างปิรามิด สิ่งที่คุณต้องทำคือบอกฉันว่าแต่ละก้อนควรไปที่ไหน งานของคุณ คุณควรเลือก bijection ตามอำเภอใจระหว่างลูกบาศก์ในจัตุรัสและก้อนในปิรามิด (มันคงจะดีถ้าคำตอบของคุณบอกว่าอันไหนของ 4900! bijections ที่คุณใช้อยู่) จากนั้นเขียนฟังก์ชันหรือโปรแกรมที่ทำสิ่งต่อไปนี้: …

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