คำถามติดแท็ก code-golf

Code-golf เป็นการแข่งขันเพื่อแก้ไขปัญหาเฉพาะในส่วนที่น้อยที่สุดของซอร์สโค้ด

13
ข้ามเหมือนกบ!
ด้วยอาร์เรย์ของจำนวนเต็มที่ไม่เป็นลบงานของคุณคือการเก็บองค์ประกอบบางอย่างเท่านั้นตามที่อธิบายไว้ด้านล่าง [1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1]สมมติว่าอาร์เรย์คือ ก่อนรับองค์ประกอบแรกของอาร์เรย์, n. เก็บnองค์ประกอบแรกและทิ้งองค์ประกอบถัดไป (ทิ้งองค์ประกอบที่n+1th) [1, 2, 4, 11, 5, 2, 0, 13, 10, 1]อาร์เรย์ใหม่คือ จากนั้นคุณคว้าองค์ประกอบตามที่ลบออกและทำสิ่งเดียวกัน นำกระบวนการไปใช้ใหม่[1, 2, 11, 5, 2, 0, 13, 10, 1] คุณทำซ้ำกระบวนการจนกว่าคุณจะมาถึงนอกขอบเขตของอาเรย์ / ไม่มีองค์ประกอบที่เหลือในอาเรย์ เราหยุดเพราะ11สูงกว่าความยาวของอาร์เรย์ ตอนนี้คุณควรส่งออกผลลัพธ์ อินพุต / เอาต์พุตอาจถูกถ่าย / จัดให้ในรูปแบบมาตรฐานใด ๆ อาร์เรย์จะไม่ว่างเปล่าและจะมีเฉพาะจำนวนเต็มที่ไม่เป็นลบ ช่องโหว่มาตรฐานทั้งหมดถูกห้าม นี่คือโค้ดกอล์ฟเพื่อให้โค้ดที่สั้นที่สุดเป็นไบต์ชนะ! …

1
ตัวเลขคอมโพสิตคุณภาพสูงที่เหนือกว่า
หมายเลขคอมโพสิตสูงที่เหนือกว่าเป็นจำนวนเต็มโดยอัตราส่วนของจำนวนตัวหารต่อจำนวนกำลังของตัวเลขนั้นสูงที่สุดเท่าที่จะเป็นไปได้ แสดงสิ่งนี้เป็นสูตร: ให้ d (n) เป็นจำนวนตัวหารของ n รวมถึงตัวเลขด้วย สำหรับจำนวนเต็ม n ที่ระบุหากมีจำนวน e เช่นนั้น d (n) / n ^ e มากกว่าหรือเท่ากับ d (k) / k ^ e สำหรับจำนวนเต็ม k ทุกตัวดังนั้น n จึงเป็นจำนวนที่ประกอบกันมาก หากต้องการข้อมูลเพิ่มเติมโปรดดูหมายเลขคอมโพสิตที่สูงเป็นพิเศษที่ Wikipedia หรือA002201ที่ OEIS นี่คือค่าเริ่มต้น: 2, 6, 12, 60, 120, 360, 2520, 5040, 55440, 720720, 1441440, 4324320, 21621600, 367567200, …

3
สุขสันต์วันเกิดขอเค้กกันเถอะ!
มันเป็นวันเกิดของเพื่อนฉันในไม่ช้าและเนื่องจากเขาเป็นโปรแกรมเมอร์และคนรักงานศิลปะ ASCII ฉันคิดว่าฉันจะทำให้เขาเป็นเค้ก ASCII! น่าเศร้าที่ฉันลืมอายุปัจจุบันของเขาดังนั้นฉันจึงต้องการมีโปรแกรมสำหรับเตาอบ ASCII ของฉันที่อบเค้กด้วยจำนวนเทียนที่ระบุดังนั้นฉันไม่ต้องทำเองถ้าฉันทำผิดกับเขา อายุ. ASCII เตาอบเพียง แต่มีหน่วยความจำและความจุที่ จำกัด ดังนั้นจึงควรใช้ไบต์น้อยที่สุดที่เป็นไปได้ งานของคุณ: เขียนโปรแกรมที่ส่งเค้กวันเกิดไปยังคอนโซลโดยมีเทียนให้มากที่สุดเท่าที่อินพุตระบุ ข้อกำหนดเค้กคือ: มันจะต้องมีเส้นขอบสร้างขึ้นจากแนวนอน-และแนวตั้งเส้นและจุด|+ อย่างน้อย 5 ตัวอักษรกว้าง (รวมถึงชายแดนเค้ก|) อย่างน้อย 5 ตัวอักษรสูง (รวมถึงชายแดนเค้ก-) จะต้องมีตัวอักษรช่องว่างระหว่างชายแดนเค้กและฐานเทียนแรก (ไม่ใช่เปลวไฟ) ในแต่ละด้านยกเว้นว่ามีเปลวไฟในพื้นที่นั้น เปลวไฟหรือเทียนฐานไม่ควรซ้อนทับขอบเค้ก ความกว้างสูงสุดของเค้กคือ 9 ตัวอักษรดังนั้นจึงมีสูงสุด 5 เทียนต่อแถว เนื่องจากเราไม่ต้องการให้เค้กของเราเป็นแบบสองมิติมันจะต้องมีความสูงเพิ่มอีก 2 แถวเพื่อให้ได้ปริมาตร เพิ่มชายแดนอื่นที่ด้านล่างและเชื่อมต่อจุดกับคนที่เหนือกว่าพวกเขาอีกครั้งใช้อักขระ ASCII จากด้านบน ( -, |และ+) ความต้องการเทียนคือ: ประกอบด้วยฐาน|และเปลวไฟ*โดยมีเปลวไฟซ้อนอยู่ด้านบนของฐาน เทียนอาจไม่ได้อยู่ติดกันกับคนอื่น ๆ ยกเว้นเส้นทแยงมุม เทียนถูกวางจากซ้ายไปขวาจากนั้นจากบนลงล่างโดยมี 5 …

11
ประวัติผู้ช่วยทำการบ้าน
การอ่านประวัติและจดบันทึกของฉันฉันอดไม่ได้ที่จะเขียนวันที่ยาว ๆ เหล่านี้ทั้งหมด –– 1784 คือการยกดินสอทั้งหกตัว! jǝǝz! อย่างที่คุณเห็นฉันชอบโปสเตอร์ที่ท้าทายที่สุดในไซต์นี้ - ขี้เกียจเมื่อพูดถึงการเขียนเรื่อง ดังนั้นฉันขอให้คุณช่วยฉันย่อวันที่ให้สั้นลง แน่นอนว่าทางออกของคุณจะต้องสั้นที่สุดเท่าที่จะเป็นไปได้เพราะมือของฉันเหนื่อยล้าจากการเขียนการพิมพ์กรณีทดสอบ ฉันจะร่นวันได้อย่างไร ตลกดีที่คุณควรถาม มันค่อนข้างง่าย: ใช้จำนวนเต็มสองจำนวนเป็นอินพุตตามลำดับที่คุณต้องการ ( (smallest, biggest)หรือ(biggest, smallest)) ใช้จำนวนที่มากขึ้นของทั้งสองและใช้เฉพาะส่วนที่ไม่ได้อยู่ในจำนวนที่น้อยกว่า ตัวอย่างเช่นที่กำหนดให้2010, 2017ย่อ2017ให้สั้นลง-7เนื่องจาก201_เป็นทั้งที่ตำแหน่งหลักเดียวกัน พิมพ์หรือคืนค่าจำนวนที่น้อยกว่าตามด้วยเครื่องหมายขีดจากนั้นจำนวนที่สั้นกว่านั้น ตัวอย่างเช่น: Bonus brownies for you if you figure out these dates' significance :) 1505, 1516 -> 1505-16 1989, 1991 -> 1989-91 1914, 1918 -> 1914-8 1833, …
12 code-golf  number 

12
กลมเหมือนศูนย์
เป้าหมาย กำหนดหมายเลขอินพุตให้ปัดเศษให้ใกล้กับตัวเลขที่มีค่ามากที่สุด ความต้องการ อินพุต จำนวนจุดลอยตัว สมมติว่าตัวเลขอินพุตส่งผลให้เกิดเอาต์พุตภายในขีด จำกัด ของชนิดข้อมูล (เช่นละเว้นข้อผิดพลาดมากเกินไป) 0 คืออินพุตที่ไม่ถูกต้อง ตัวเลขที่ไม่สามารถแสดงอย่างถูกต้องในประเภทข้อมูลจุดลอยตัว (เช่น"0.35"การจัดเก็บเป็น0.3499999) ไม่จำเป็นต้องได้รับการสนับสนุน เอาท์พุต ตัวเลขที่ใกล้ที่สุดซึ่งประกอบด้วยตัวเลขที่ไม่ใช่ศูนย์หนึ่งหลักและหมายเลขศูนย์ใด ๆ ผลลัพธ์ต้องรองรับตัวเลขติดลบและเศษส่วน เมื่ออินพุตอยู่ระหว่างสองเอาต์พุตที่เป็นไปได้ให้ปัดออกจากศูนย์ การเสนอ โฟกัสอยู่ที่การคำนวณมากกว่าการนำเสนอ ผลลัพธ์อาจเป็นชนิดข้อมูลจุดลอย อาจเป็นข้อความทั้งแบบเต็มหรือในทางวิทยาศาสตร์ หากคุณพบช่องโหว่ที่การนำเสนอวิธีการลดจำนวนไบต์ของคุณรุ่งโรจน์กับคุณ! ตัวอย่าง 9 -3000 .2 0.2 -.2 7e12 5e-15 1e0 กรณีทดสอบ Input Output 1 1 10 10 17 20 99 100 54321 50000 56789 60000 -123 -100 …
12 code-golf  math 

6
ค้นหาค่าสัมประสิทธิ์ของฟังก์ชั่นการสร้างเหตุผล
หากเราเขียนลำดับของตัวเลขเป็นค่าสัมประสิทธิ์ของชุดพลังงานชุดพลังงานนั้นจะเรียกว่า (ธรรมดา) ฟังก์ชันสร้าง (หรือ Gf) ของลำดับนั้น นั่นคือถ้าสำหรับฟังก์ชันF(x)และชุดของจำนวนเต็มa(n)เรามี: a(0) + a(1)x + a(2)x^2 + a(3)x^3 + a(4)x^4 + ... = F(x) จากนั้นเป็นหน้าที่ของการสร้างF(x) aตัวอย่างเช่นชุดรูปทรงเรขาคณิตบอกเราว่า: 1 + x + x^2 + x^3 + x^4 + ... = 1/(1-x) ดังนั้นการสร้างฟังก์ชั่นของการมี1, 1, 1, ... 1/(1-x)หากเราแยกความแตกต่างทั้งสองข้างของสมการข้างบนและคูณด้วยxเราจะได้ความเสมอภาคต่อไปนี้: x + 2x^2 + 3x^3 + 4x^4 + ... = …
12 code-golf  math  integer  polynomials  code-golf  math  abstract-algebra  restricted-time  code-golf  math  primes  code-golf  math  number  arithmetic  code-golf  quine  code-golf  number  sequence  code-golf  string  number  code-golf  array-manipulation  code-golf  number  code-golf  string  code-golf  arithmetic  code-golf  string  array-manipulation  rubiks-cube  code-golf  math  number  code-golf  tips  bash  code-golf  ascii-art  music  code-golf  arithmetic  code-golf  math  number  arithmetic  integer  code-golf  number  array-manipulation  code-golf  geometry  grid  set-partitions  code-golf  math  number  code-golf  combinatorics  code-golf  regular-expression  code-golf  permutations  code-golf  ascii-art  code-golf  number  array-manipulation  matrix  code-golf  kolmogorov-complexity  compile-time  cops-and-robbers  polyglot  cops-and-robbers  polyglot  code-golf  string  code-golf  string  ascii-art  matrix  animation  code-golf  ascii-art  code-golf  string  balanced-string  code-golf  integer  integer-partitions  expression-building 

16
Bounce-modulo สองตัวเลข
กราฟของการดำเนินการโมดูโล ( Y= xพอควรky=xmodky = x \mod k ) มีลักษณะดังนี้: นี่เป็นฟังก์ชั่นที่มีประโยชน์มากเพราะมันช่วยให้เราสร้างพฤติกรรม "การห่อ" อย่างไรก็ตามมันยุ่งยากมากเมื่อฉันต้องการใช้มันเพื่อสร้างรูปลักษณ์ของ "แสง" ระหว่างกำแพงทั้งสอง กราฟของฟังก์ชั่น "เด้ง" ( Y= bounce ( x , k )y=bounce(x,k)y = \text{bounce} (x, k) ) มีลักษณะดังนี้: ระยะเวลาของกราฟของมีkระยะเวลาของกราฟของคือเนื่องจากมันเลื่อนขึ้นสำหรับหน่วยแล้วเลื่อนลงไปอีกหน่วยก่อนที่จะกลับไปที่จุดเริ่มต้น สำหรับทั้งสองฟังก์ชั่นค่าต่ำสุดสำหรับคือ 0 และสูงสุดคือ (ที่จริงแล้วสำหรับฟังก์ชั่นโมดูลัสที่มีอินพุทอินทิกรัลคือ ) นอกจากนี้สำหรับทั้งสองฟังก์ชันค่าที่คือ 0k y = bounce ( x , k ) 2 k k …

10
ลำดับ Lehmer-Comtet
ลำดับ Lehmer-Comtet เป็นลำดับดังกล่าวว่าA (n)เป็นn TH อนุพันธ์ของf (x) = x xด้วยความเคารพxประเมินที่x = 1 งาน ใช้จำนวนเต็มแบบไม่ลบเป็นอินพุตและเอาต์พุตคำที่nของลำดับ Lehmer-Comtet นี่คือcode-golfดังนั้นคุณควรลดขนาดไฟล์ของซอร์สโค้ดของคุณให้เล็กที่สุด กรณีทดสอบ OEIS 5727 นี่คือคำศัพท์คู่แรกที่เรียงลำดับ (คัดลอกมาจาก OEIS) 1, 1, 2, 3, 8, 10, 54, -42, 944, -5112, 47160, -419760, 4297512, -47607144, 575023344, -7500202920, 105180931200, -1578296510400, 25238664189504, -428528786243904, 7700297625889920, -146004847062359040, 2913398154375730560, -61031188196889482880

17
บันไดสตริงที่ต่อยอด
กำหนดสตริงsและจำนวนเต็มบวกNค่อยๆทำซ้ำอักขระแต่ละตัวมากขึ้นเรื่อย ๆ จนกว่าจะNซ้ำกันจากนั้นพักที่Nซ้ำกันจนกระทั่งNตัวละครอยู่ห่างจากจุดสิ้นสุดจากนั้นก้าวลงอีกครั้ง ตัวอย่างเช่นที่กำหนดabaloneและ3: a we start with 1 copy bb then 2 copies aaa then 3 copies, which is our second parameter lll so we continue using 3 copies ooo until we reach the end nn where we use 2 copies e and then finally 1 copy และผลลัพธ์ก็abbaaalllooonneคือ มีการรับประกันว่าสตริงมีความยาวมากกว่า2Nและมีอักขระตั้งแต่aถึงzเท่านั้น …
12 code-golf  string 

6
สตริงนี้เป็น FEN ที่ถูกต้องหรือไม่
ความท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นซึ่งรับอินพุตสตริงเป็นพารามิเตอร์ฟังก์ชันหรือจาก stdin และพิจารณาว่าเป็นสตริงFEN ที่ถูกต้องหรือไม่ อินพุต คุณสามารถสันนิษฐานได้ว่าอินพุตจะมีอักขระต่อไปนี้ (ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) pkqrbnPKQRBN12345678/ ความยาวของอินพุตจะต้องมีอย่างน้อย 1 ตัวอักษรและสูงสุด 100 ตัวอักษร เอาท์พุต ผลลัพธ์ควรเป็นค่าจริง / เท็จ เหล่านี้สามารถเป็นค่าใด ๆ ที่คุณต้องการตราบใดที่พวกเขามีความสอดคล้องกัน (ผลความจริงทั้งหมดมีผลลัพธ์ที่เหมือนกันผลลัพธ์เท็จทั้งหมดมีผลลัพธ์ที่เหมือนกัน) คุณควรมีเอาต์พุตที่แตกต่างกันสองแบบ สิ่งที่นับว่าถูกต้อง ตัวอักษรตัวพิมพ์เล็กแทนชิ้นส่วนสีดำตัวอักษรตัวพิมพ์ใหญ่แทนชิ้นส่วนสีขาว คุณควรตรวจสอบให้แน่ใจว่าเป็นไปได้ในเกมหมากรุกสำหรับชิ้นส่วนที่อยู่ในตำแหน่งปัจจุบัน ผู้เล่นแต่ละคนจะมี 1 ราชาเสมอ (k / K) ผู้เล่นแต่ละคนอาจมีไม่เกิน 8 เบี้ย (p / P) ผู้เล่นแต่ละคนมักจะมีไม่เกิน 1 * ราชินี (q / Q) ผู้เล่นแต่ละคนจะไม่มีอีกต่อไป มากกว่า 2 * rooks …

30
มาตรฐานคืออะไร
ในสนามกอล์ฟค่ามาตรฐานของหลักสูตรจะคำนวณโดยใช้สูตรนี้: (3*num_of_3_par_holes + 4*num_of_4_par_holes + 5*num_of_5_par_holes) - difficulty_rating งานของคุณคือการคำนวณรอยขีดข่วนมาตรฐานของสนามกอล์ฟซึ่งมีปัจจัยการผลิตทั้งสี่นี้ คุณควรป้อนข้อมูลในรูปแบบมาตรฐานใด ๆ ในรูปแบบ [num_of_3_pars, num_of_4_pars, num_of_5_pars], difficulty rating แต่ถ้ามันช่วยประหยัดไบต์คุณหลายคนใช้วิธีการที่แตกต่างกัน คุณควรส่งออกผลลัพธ์สุดท้ายโดยวิธีการที่ยอมรับใน meta เช่นกลับมาจากฟังก์ชั่น รหัสที่สั้นที่สุดชนะเพราะนี่คือรหัสกอล์ฟ !
12 code-golf  math  number 

4
เล่นกับหุ่นยนต์สำหรับเด็ก - ฉันจะไปถึงจดหมายฉบับไหน?
TL; DR:กำหนดอาร์เรย์ของตัวอักษรและหุ่นยนต์ในตำแหน่งเริ่มต้นของอาร์เรย์เขียนอัลกอริธึมที่สามารถอ่านสตริงที่มีการเคลื่อนไหว ( Fสำหรับ "ไปข้างหน้า" Rสำหรับ "หมุน 90 องศาขวา" และL"หมุน 90 องศา left ") และคำนวณตำแหน่งสิ้นสุดของหุ่นยนต์ รายละเอียดเพิ่มเติมในข้อความที่สมบูรณ์ เรามีอุปกรณ์ที่ตั้งโปรแกรมได้ง่าย ๆ ที่บ้านสำหรับเด็ก ๆ : ยานพาหนะขนาดเล็กที่มีปุ่มเพื่อให้รถเดินไปข้างหน้าเลี้ยวซ้าย 90 องศาหรือเลี้ยวขวา 90 องศา สิ่งที่คล้ายกับสิ่งนี้: เรายังมีแผ่นโฟมพร้อมตัวอักษรดังนี้: จุดประสงค์ทั้งหมดนี้คือการสอนเด็ก ๆ ทั้งตัวอักษรและพื้นฐานของการเขียนโปรแกรมทั้งหมดในครั้งเดียว ความท้าทาย สมมติว่าเราได้จัดเรียงแผ่นโฟมแบบสุ่มของเราดังนี้: +---+---+---+---+---+---+---+ | E | R | L | B | I | X | N | +---+---+---+---+---+---+---+ …

11
แยกรายการของรายการลงในรายการเศร้า
ในการท้าทายนี้คุณจะต้องแยกวิเคราะห์รายการเป็นรูปแบบรายการที่ง่ายขึ้น ความท้าทายนี้ขึ้นอยู่กับตัวแยกวิเคราะห์เศร้าของฉัน ในตัวแยกวิเคราะห์ sadflak ของฉันมีการลบทั้งหมด () แทนที่ด้วยผลรวมของ () ที่จุดเริ่มต้นของรายการเพื่อให้โปรแกรมทำงานได้เร็วขึ้น ในการแยกวิเคราะห์ไปยัง Sad-List คุณต้องทำสิ่งนี้ (การใช้ python ใช้ tuple ของ tuples): def sadlistfunc(list): new-sadlist = [0] for i in list: if i == (): new-sadlist[0]+=1 else: new-sadlist.append(sadlistfunc(i)) นี่คือฟังก์ชั่นวนซ้ำ สำหรับรายการให้เริ่มต้นรายการใหม่เริ่มต้นด้วยจำนวน () จากรายการอินพุตจากนั้นส่วนที่เหลือของรายการนี้คือรุ่นเศร้ารายการของทุกรายการที่ไม่ใช่ () จากอินพุตรายการตามลำดับ ส่งคืนรายการ การป้อนข้อมูล: คุณสามารถป้อนข้อมูลในรูปแบบที่แตกต่างกันไม่กี่: คุณอาจใช้มันเป็นรายการ คุณอาจใช้มันเป็นสิ่งอันดับ คุณอาจใช้มันเป็นสตริง ถ้าคุณคิดว่ามันเป็นสตริงคุณควรใช้วงเล็บบางอันตามที่ปรากฎในสมอง คุณไม่สามารถใช้อักขระ 1 และ …

19
สร้างดัชนีการค้นหา
รับสตริงส่งคืนตารางที่คอลัมน์แรกมีตัวอักษรที่ไม่ซ้ำกันของสตริงตามลำดับการเกิดขึ้นและคอลัมน์ที่ตามมาจะแสดงรายการดัชนีของตัวอักษรนั้นในสตริงโดยใช้การจัดทำดัชนีเป็นศูนย์หรือใช้ครั้งเดียว ช่องว่างในแนวนอนไม่สำคัญตราบใดที่คอลัมน์ซ้ายสุดอยู่ในแนวตั้ง ดัชนีจะต้องอยู่ในลำดับจากซ้ายไปขวา ตัวอย่าง ใช้การทำดัชนีแบบ zero-based และกำหนด "abracadabra" ให้ส่งคืน a 0 3 5 7 10 b 1 8 r 2 9 c 4 d 6 ใช้การจัดทำดัชนีแบบฐานเดียวและได้รับ "3141592653589793238462643383279503", คืนค่า: 3 1 10 16 18 25 26 28 34 1 2 4 4 3 20 24 5 5 9 11 32 9 …

22
Cube ของ Rubik ASCII
แรงบันดาลใจจากการแชทนี้และต่อไปนี้: งานของคุณคือการส่งออกต่อไปนี้: _ _ _ /_/_/_/\ /_/_/_/\/\ /_/_/_/\/\/\ \_\_\_\/\/\/ \_\_\_\/\/ \_\_\_\/ อนุญาตให้มีช่องว่างนำหน้าหรือต่อท้ายพิเศษได้ตราบใดที่ไม่เปลี่ยนแปลงลักษณะของลูกบาศก์ ตามปกติอนุญาตให้ส่งคืนรายการด้านบนหรือรายการสตริงจากฟังก์ชันได้ นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ!

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