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

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

9
อ่านไทม์ไลน์
แรงบันดาลใจจากการวาดเส้น กำหนดไทม์ไลน์ของเหตุการณ์เอาท์พุทวันที่สำหรับแต่ละเหตุการณ์ เส้นเวลาจะได้รับในแบบฟอร์ม 2000 --AF-C-------E--D---B-- โดยที่บรรทัดแรกแสดงจุดที่ทราบในเวลา ปีที่รู้จักมักเป็นอักขระที่ต่ำกว่าตัวเลขแรกของปีที่รู้จัก คุณอาจจะ: ในเส้นเวลานั้นตัวละครแต่ละตัวแสดงถึงหนึ่งปี จะมีเหตุการณ์อย่างน้อยหนึ่งเหตุการณ์เสมอ กิจกรรมไม่จำเป็นต้องเป็นระเบียบ คุณอาจสมมติว่าตัวละครทุกตัวในช่วงระหว่างAและตัวละครที่ไกลที่สุดที่มีอยู่ จะมีไม่เกิน 26 กิจกรรม จุดที่รู้จักจะไม่มีช่องว่างภายในไปทางขวา อาจมีตัวเลขติดลบทั้งในจุดที่รู้จักและเอาท์พุท คุณจะไม่ต้องจัดการกับตัวเลขที่มากกว่า 2 ^ 32 คุณจะไม่ต้องจัดการกับช่วงที่ใหญ่กว่า 2 ^ 8 คุณสามารถป้อนข้อมูลเป็นตัวอักษรตัวพิมพ์เล็กแทนตัวพิมพ์ใหญ่ คุณควรเขียนโปรแกรมที่ใช้เส้นเวลาในแบบฟอร์มนี้และส่งออกวันที่หลักตามลำดับ (A, B, C, D ... ) คุณสามารถส่งออกในรูปแบบที่สะดวก แต่คุณต้องป้อนข้อมูลในรูปแบบที่กำหนด กรณีทดสอบ: 2000 --AF-C-------E--D---B-- [1998, 2016, 2001, 2012, 2009, 1999] 10 --C-AB--D [9, 10, 7, 13] …

3
รองพื้นโลกที่เก่าแก่
แรงบันดาลใจอย่างมากจากการเขียนโปรแกรมที่เก่าแก่โลก นอกจากนี้ยังเกี่ยวข้องกับความท้าทายนี้ ลองกำหนดที่สำคัญที่เก่าแก่เป็นจำนวนซึ่งเป็นตัวสำคัญ แต่จะไม่สำคัญหากคุณลบย่อยที่ต่อเนื่องกันใด ๆ ของฐาน N 10 0 < N < digits in numberหลักที่ ตัวอย่างเช่น 409 เป็นไพรม์ที่เก่าแก่เพราะ 409 เป็นไพร์มที่สำคัญ แต่ตัวเลขทั้งหมดที่เกิดจากการลบซับสตริง 1 หลักไม่ใช่ไพร์ม: 40 49 09 = 9 และตัวเลขทั้งหมดที่เกิดจากการลบสตริงย่อยของความยาว 2 นั้นไม่ได้เป็นจำนวนเฉพาะ: 4 9 ในทางกลับกันหมายเลขเฉพาะ 439 ไม่ใช่บริสุทธิ์ การลบสตริงย่อยต่างกันส่งผลให้: 43 49 39 4 9 ในขณะที่ 49, 39, 4 และ 9 ล้วน แต่ไม่สำคัญ …

10
ความก้าวหน้าทางเลขคณิต
งานของคุณคือการวิเคราะห์อินพุตและเอาต์พุตสูตรสำหรับคำศัพท์ที่ n หากเป็นลำดับเลขคณิตมิฉะนั้นจะพิมพ์ "NAAP" อินพุต อินพุต (จาก STDIN) จะประกอบด้วยตัวเลขไม่กี่ตัวระหว่าง 4 ถึง 10 หมายเลขโดยที่แต่ละหมายเลขจะอยู่ในช่วงระหว่าง -1000 ถึง 1,000 รวมโดยคั่นด้วยตัวคั่น (ช่องว่างหรือเครื่องหมายจุลภาคหรือกึ่งเครื่องหมายโคลอน การตั้งค่าของคุณ]) นี่คือตัวอย่างอินพุต 12,14,16,18 //valid -3 4 5 1 -2 -4 //valid 45;35;-35 //invalid (only three numbers are present instead of the minimum of 4 numbers) 2,32;21,321 //invalid (it uses two different delimiters: …

4
พิมพ์กำหนดการบล็อกของฉัน
โรงเรียนมัธยมของฉันและอื่น ๆ อีกมากมายใช้ตารางเวลาชนิดหนึ่งที่เรียกว่าตารางการหมุนที่ถูกบล็อก นี่เป็นวิธีสำหรับคนที่มี 8 คลาส แต่จะมี 6 คาบในหนึ่งวันเรียน มีสี่วันในตารางบล็อกที่ทำซ้ำซ้ำแล้วซ้ำอีกและไม่มีอะไรเกี่ยวข้องกับวันที่แท้จริงของสัปดาห์ [1-4]แต่ละคนจะได้รับมอบหมายจำนวน วิธีการกำหนดการทำงานคือคุณรายการเรียนตอนเช้าของคุณทุกช่วงเวลา:1-4 [1, 2, 3, 4]นี่คือตารางเวลาของคุณสำหรับวันแรกหรือวันที่ 1 [2, 3, 4, 1]ส่วนที่เหลือของวันเพียงแค่หมุนรายการ: [3, 4, 1, 2], [4, 1, 2, 3], อย่างไรก็ตามช่วงสุดท้ายของช่วงเช้าคือ "ลดลง" และคุณไม่เห็นอาจารย์คนนั้นในวันนั้น ดังนั้นวันที่มี: [1, 2, 3], [2, 3, 4], ,[3, 4, 1][4, 1, 2] ช่วงบ่ายจะเหมือนกันยกเว้นว่าจะใช้ระยะเวลาแทน:5-8 , , ,[5, 6, 7][6, …

2
นับต้นไม้
ต้นไม้เป็นที่เชื่อมต่อกราฟไม่มีทิศทางที่ไม่มีรอบ งานของคุณคือการนับจำนวนต้นไม้ที่แตกต่างกันที่มีจำนวนจุดยอดที่กำหนด ต้นไม้สองต้นถือว่าแตกต่างกันหากไม่ได้เป็นมอร์ฟิค กราฟสองกราฟ isomorphic หากจุดยอดที่เกี่ยวข้องสามารถจับคู่ในลักษณะที่มีขอบระหว่างจุดยอดสองจุดในกราฟหนึ่งถ้าหากมีขอบระหว่างจุดยอดคู่กับจุดยอดเหล่านั้นในกราฟอื่น สำหรับคำอธิบายที่สมบูรณ์ยิ่งขึ้นให้ดูที่ลิงก์ด้านบน หากต้องการดูว่าทั้งหมดของต้นไม้ที่แตกต่างของขนาด 1-6 มีลักษณะเหมือนจะดูที่นี่ ชุดข้อมูลที่คุณพยายามส่งออกคือA000055ที่ OEIS ข้อ จำกัด : 6วิธีการแก้ปัญหาของคุณจะต้องใช้เวลาในช่วงนาทีหรือน้อยกว่าที่จะทำงานในการป้อนข้อมูล นี่ไม่ได้มีวัตถุประสงค์เพื่อกำจัดอัลกอริธึมเวลาเอ็กซ์โปเนนเชียล แต่มันมีจุดประสงค์เพื่อกำจัดอัลกอริธึมเวลาทวีคูณเช่นทวีคูณบังคับให้ข้ามชุดขอบทั้งหมด อินพุต:จำนวนเต็มใด ๆ ที่ไม่เป็นลบ อินพุตอาจเป็นวิธีมาตรฐานรวมถึง STDIN พารามิเตอร์บรรทัดคำสั่งอินพุตฟังก์ชัน ฯลฯ เอาท์พุท:จำนวนต้นไม้ที่แตกต่างที่มีจุดยอดมากที่สุดเท่าอินพุต เอาท์พุทอาจจะด้วยวิธีมาตรฐานใด ๆ รวมถึง STDOUT ฟังก์ชั่นกลับมา ฯลฯ ตัวอย่าง: ควรกลับ0, 1, 2, 3, 4, 5, 6, 71, 1, 1, 1, 2, 3, 6, 11 เกณฑ์การให้คะแนน:โค้ดกอล์ฟทีละไบต์ อาจเป็นรหัสที่สั้นที่สุดชนะ! …

1
Polyglot ที่ไม่ใช่ Palindromic
บทนำ หมายเลข 101 เป็น palindrome เนื่องจากจะอ่านไปข้างหน้าและข้างหลังเหมือนกัน หมายเลข 105 ไม่ใช่ อย่างไรก็ตาม 105 ในฐานแปดเขียนเป็น 151 ซึ่งเป็น palindromic บนมืออื่น ๆ 103 ไม่ได้เป็น palindrome ในใด ๆฐานตั้งแต่ 2 ถึง 101 ดังนั้น 103 อย่างเคร่งครัดไม่ใช่ palindromic คำจำกัดความที่แม่นยำคือ: จำนวนเต็มที่ไม่ใช่ค่าลบnเป็นค่าที่ไม่ใช่พาลินโดรมิกอย่างเคร่งครัดหากไม่ได้เป็น palindrome ในฐานระหว่าง 2 ถึง n-2 หมายเลขแรกที่ไม่ใช่ตัวเลข palindromic อย่างเคร่งครัดคือ0, 1, 2, 3, 4, 6, 11, 19, 47, 53, 79, 103, …

4
ลำดับมายากลของความยาว n
ลำดับเวทย์มนตร์เป็นลำดับของจำนวนเต็มที่ไม่เป็นลบx[0..n-1]เช่นว่ามีx[i]อินสแตนซ์ของi ตัวอย่างเช่น 6,2,1,0,0,0,1,0,0,0 เป็นลำดับเวทย์มนตร์เนื่องจากมี 6 0, 2 1's และอื่น ๆ เขียนฟังก์ชั่นซึ่งเมื่อได้รับ n เอาต์พุตเอาท์พุตมายากลทั้งหมดที่มีความยาว n โปรแกรมที่สามารถสร้างเอาต์พุตที่ถูกต้องสำหรับค่าสูงสุดของ n ภายใน 10 วินาที (ยินดีต้อนรับทุกโปรแกรม) ตัวอย่างเช่นโปรแกรมของอลิซสามารถจัดการได้มากถึง n = 15 ภายใน 10 วินาทีในขณะที่บ๊อบสามารถจัดการได้มากถึง n = 20 ภายในเวลาเดียวกัน บ๊อบชนะ แพลตฟอร์ม: Linux 2.7GHz @ 4 CPUs

1
สร้างลำดับดาเวนพอร์ท - Schinzel
พื้นหลัง ลำดับ Davenport-Schinzelมีสองตัวแปรจำนวนเต็มบวกและd nเราจะแสดงว่าชุดของทุกลำดับ Davenport-Schinzel DS(d,n)สำหรับพารามิเตอร์ที่กำหนดโดย พิจารณาลำดับทั้งหมดของตัวเลขธรรมชาติ1เพื่อnรวมซึ่งตอบสนอง: ไม่มีตัวเลขสองตัวติดต่อกันในลำดับที่เหมือนกัน ไม่มีความยาวที่มากกว่ากัน (ไม่จำเป็นต้องต่อเนื่องกัน) dซึ่งสลับไปมาระหว่างตัวเลขสองจำนวนที่แตกต่างกัน อนุญาตLแสดงความยาวสูงสุดของลำดับดังกล่าว (ที่กำหนดdและn) จากนั้นเป็นชุดของลำดับดังกล่าวทั้งหมดที่มีความยาวDS(d,n)L ตัวอย่างบางส่วนอาจช่วยได้ อนุญาตd = 4, n = 3. ลำดับที่ยาวที่สุดที่เป็นไปได้ที่มีข้อ จำกัด L = 8เหล่านี้มี ดังนั้นต่อไปนี้เป็นสมาชิกของDS(4,3): [1, 2, 1, 3, 1, 3, 2, 3] ไม่มีตัวเลขที่เหมือนกันติดต่อกันและมีการเรียงลำดับความยาวสลับกัน4แต่ไม่มีอีกต่อไป: 1 2 1 2 1 2 1 2 1 3 1 3 1 3 …

2
X ที่มากกว่า 3 มีความแตกต่างอย่างน้อย 2 อย่างระหว่าง X และ Y
ฉันกำลังพยายามตีกอล์ฟ C ++ บางตัว เป็นไปได้ไหมที่ทำให้สภาพนี้สั้นลง? X > 3 & X - Y > 1 (นอกเหนือจากการลบช่องว่างออกแน่นอน) ดังนั้นXอย่างน้อยแต่4X >= Y + 2 XและYเป็นจำนวนเต็มในช่วง [0,5] ฉันพยายามค้นหาสูตร bitwise แต่ล้มเหลว
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

19
คืนค่าแต่ละตัวเลขจากกลุ่มของตัวเลข
ความท้าทาย โปรแกรมจะต้องส่งคืนตัวเลขทั้งหมดที่รวมอยู่ในกลุ่ม (ลำดับที่คั่นด้วยเครื่องหมายจุลภาคและเครื่องหมายขีดกลาง) ของตัวเลข กฎระเบียบ s เป็นสตริงลำดับ; ตัวเลขทั้งหมดรวมอยู่ในsเป็นบวก ; ตัวเลขจะเพิ่มขึ้น ; ตัวเลขจะไม่ซ้ำ เมื่อคุณตอบให้แสดงผลลัพธ์สำหรับ s="1,3-5,9,16,18-23" ตัวอย่าง input(s) outputs ----------------- 1 1 1,2 1,2 1-4 1,2,3,4 1-4,6 1,2,3,4,6 1-4,8-11 1,2,3,4,8,9,10,11 โชคดี. =)

19
คำนวณคำที่ n ของลำดับการอธิบายตนเองของ Golomb
แรงบันดาลใจจากคำถามก่อนหน้านี้ ลำดับ g (n) อธิบายตนเองของ Golombเป็นลำดับที่มีจำนวนธรรมชาติใด ๆnซ้ำภายในลำดับ g (n) ครั้ง ตัวเลขสองสามตัวแรกในลำดับคือ: n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 g(n) 1 2 2 3 3 4 4 4 5 5 5 6 6 6 6 7 7 …

7
ข้ามลำดับ
ข้ามลำดับ รับรายการของจำนวนเต็มบวกAเรียกมันว่าลำดับที่เพิ่มขึ้นถ้าแต่ละองค์ประกอบมากกว่าหรือเท่ากับหนึ่งก่อนหน้า; และเรียกว่าเป็นลำดับที่ลดลงหากแต่ละองค์ประกอบน้อยกว่าหรือเท่ากับหนึ่งก่อนหน้า ลำดับที่เพิ่มขึ้นบางส่วน: [1,2,4,7] [3,4,4,5] [2,2,2] [] บางลำดับลดลง: [7,4,2,1] [5,4,4,3] [2,2,2] [] ลำดับข้ามคือรายการที่สามารถย่อยสลายเป็นสอง subsequences เคล็ดหนึ่งลำดับที่เพิ่มขึ้นและอื่น ๆ ตามลำดับการลด ตัวอย่างเช่นรายการ: [3,5,2,4,1] เป็นลำดับการข้ามเนื่องจากสามารถแบ่งย่อยเป็น: [3, 4 ] [ 5,2, 1] ที่[3,4]เป็นลำดับที่เพิ่มขึ้นและ[5,2,1]เป็นลำดับที่ลดลง เราจะเรียกคู่ดังกล่าว (ที่เพิ่มขึ้นลดลง) subsequences การสลายตัวของลำดับการผสมข้ามพันธุ์ รายการ: [4,5,2,1,3] ไม่ใช่ลำดับการข้าม ไม่มีวิธีที่จะย่อยสลายมันเป็นลำดับที่เพิ่มขึ้นและลดลง งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นการใช้เป็นรายการของจำนวนเต็มบวก; และถ้าเป็นลำดับข้ามให้ส่งคืนสองรายการในหนึ่งในการย่อยสลาย หรือค่า "เท็จ" ที่สอดคล้องกันหากรายการไม่ใช่ลำดับการข้าม นี่คือรหัสกอล์ฟ ; โปรแกรม / ฟังก์ชั่นที่สั้นที่สุดในแต่ละภาษาเป็นผู้ชนะ กฎ: อินพุตมีความยืดหยุ่น …

26
ฟังก์ชั่นที่จะใช้สามจำนวนเต็มและส่งกลับรายการจำนวนเต็มและตัวอักษรตัวอักษร
ท้าทาย เราใช้เวลาสามจำนวนเต็มบวกa, bและcเป็น input ใช้จำนวนเต็มเหล่านี้เป็นครั้งแรกสร้างลำดับในช่วงที่[0, c](รวมทั้งสองด้าน) bในขั้นตอนของ ตัวอย่างเช่นสำหรับลำดับจะเป็นa=4, b=2, c=100[0,2,4,...,96,98,100] สำหรับทุกหมายเลขในลำดับนี้ซึ่งหารด้วยaให้แทนที่ด้วยตัวอักษรถัดไปในตัวอักษรตัวพิมพ์เล็กเริ่มต้นด้วยตัวอักษร 'a' และล้อมรอบกลับเป็น 'a' หลังจากคุณถึง 'z' ตัวอย่าง: อินพุต: a=4, b=2, c=100 เอาต์พุต:a2b6c10d14e18f22g26h30i34j38k42l46m50n54o58p62q66r70s74t78u82v86w90x94y98z กฏท้าทาย: คุณสามารถสมมติว่าa, bและเป็นจำนวนเต็มบวกเท่านั้นที่cb ≤ a ≤ c คุณสามารถสันนิษฐานได้ว่าaมีหลายbตัว คุณสามารถสันนิษฐานได้ว่าคือหารด้วยcb เอาต์พุตที่ต้องการคือสตริงที่ต่อกันเดียวตามด้านบน แต่รายการ / อาร์เรย์นั้นเป็นที่ยอมรับ กรณีทดสอบ: Input: a=4, b=2, c=100 Output: a2b6c10d14e18f22g26h30i34j38k42l46m50n54o58p62q66r70s74t78u82v86w90x94y98z Input: a=9, b=3, c=174 Output: a36b1215c2124d3033e3942f4851g5760h6669i7578j8487k9396l102105m111114n120123o129132p138141q147150r156159s165168t174 Input: a=10, …

14
ค้นหารูปแบบในลำดับเลขนี้ของ 1 และ 0
เขียนโปรแกรมหรือฟังก์ชั่นที่สั้นที่สุดซึ่งสร้าง 1,000 หมายเลขหรือลำดับ (0- หรือ 1-indexed) ซึ่งขึ้นต้นด้วย [0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, …

8
การรวบรวมจากลำดับที่เป็นสี่เหลี่ยมจัตุรัสที่สมบูรณ์แบบ
ที่กำหนดลำดับOEIS A033581ซึ่งเป็นลำดับอนันต์ที่n 'TH ระยะ (0 ดัชนี) จะได้รับจากรูปแบบสูตรปิด6 × n 2 งานของคุณคือการเขียนโค้ดซึ่งจะส่งออกชุดย่อยทั้งหมดของชุดหมายเลขแรกของ N ในลำดับเช่นว่าผลรวมของเซตย่อยเป็นรูปสี่เหลี่ยมจัตุรัสที่สมบูรณ์แบบ กฎระเบียบ จำนวนเต็มNถูกกำหนดเป็นอินพุต คุณไม่สามารถใช้ซ้ำหมายเลขที่ใช้แล้วในผลรวม (นั่นคือแต่ละหมายเลขสามารถปรากฏในแต่ละชุดย่อยได้ไม่เกินหนึ่งครั้ง) หมายเลขที่ใช้สามารถติดต่อกันไม่ได้ รหัสที่มีขนาดน้อยที่สุดชนะ ตัวอย่าง ลำดับที่กำหนดคือ {0,6,24,54,96, ... , 15000} หนึ่งในเซตย่อยที่ต้องการคือ {6,24,294} เพราะ 6+24+294 = 324 = 18^2 คุณต้องค้นหาชุดดังกล่าวของความยาวที่เป็นไปได้ทั้งหมดในช่วงที่กำหนด

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