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

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

18
Prime Factoral Roots
แรงบันดาลใจจากรากดิจิตอลตัวเลขรากที่สำคัญของตัวเลขคือจำนวนที่ปรากฏเมื่อคุณนำปัจจัยสำคัญของตัวเลขเพิ่มเข้าด้วยกันและทำซ้ำกระบวนการตามจำนวนผลลัพธ์ต่อเนื่องจนกว่าคุณจะจบลงด้วยจำนวนเฉพาะ ( ซึ่งมีตัวเองเป็นปัจจัยสำคัญเท่านั้นและเป็นรากของตัวเองที่สำคัญของตัวเอง) นายกแฟคทอเรียลของ 4 คือ 4 ในขณะที่ 2 * 2 = 2 + 2 และนี่เป็นเพียงรากที่ไม่สำคัญเฉพาะของจำนวนเต็มมากกว่า 1 (ซึ่งเป็นอีกกรณีพิเศษเนื่องจากไม่มีปัจจัยสำคัญ) ลำดับ OEIS ที่เกิดขึ้นจากราก factoral สำคัญคือA029908 ตัวอย่างเช่นรูต factoral ที่สำคัญของ 24 คือ: 24=2*2*2*3 2+2+2+3=9=3*3 3+3=6=2*3 2+3=5, and the only prime factor of 5 is 5. Therefore, the prime factoral root of 24 is 5. …

2
แฉทุกทิศทาง
การป้อนข้อมูล: สตริง เอาท์พุท: 1) อันดับแรกเราจะลบตัวอักษรที่ส่วนท้ายของอินพุต - สตริงจนกว่าเราจะเหลือความยาวที่เป็นรูปสี่เหลี่ยม (เช่น 1, 4, 9, 16, 25, 36, ฯลฯ ) ดังนั้นabcdefghijklmnopqrstuvwxyz(ความยาว 26) จะกลายเป็นabcdefghijklmnopqrstuvwxy( ความยาว 25) 2) จากนั้นเราใส่มันลงในช่องสี่เหลี่ยมทีละบรรทัดจากซ้ายไปขวา: abcde fghij klmno pqrst uvwxy 3) เราพับมันในทั้งสี่ทิศทางเช่นนี้ (เรายังคงตีแผ่จนกระทั่ง 'บล็อก' ด้านนอกที่พับไว้ไม่มีตัวอักษรภายในที่จะคลี่ออกอีกต่อไป): m qrs l n ghi abcde ihgf jihg mn lk on lm srqp tsrq uvwxy qrs l …

15
โอเอกซ์ - X หรือ O
พื้นหลัง ข้ามไปที่ "งาน" หากคุณคุ้นเคยกับ Tic-Tac-Toe (ฉันคิดว่าส่วนใหญ่เป็น!) Tic-Tac-Toeเป็นเกมที่มีผู้เล่นสองคนที่มีชื่อเสียง มันประกอบด้วยกระดาน3x3ที่เต็มไปด้วยผู้เล่นสองคนค่อยๆ ผู้เล่นคนแรกที่ใช้ตัวละครXและอื่น ๆ Oที่ใช้อย่างใดอย่างหนึ่ง ผู้ชนะคือคนแรกที่ได้รับ 3 ตัวละครติดต่อกันและเหมือนกัน ( XหรือO) ทั้งแนวนอนแนวตั้งหรือแนวทแยงมุม ในกรณีที่บอร์ดเต็มและไม่มีผู้เล่นคนใดจัดการตัวละครสามตัวติดต่อกันตามที่อธิบายไว้ข้างต้นเกมจะจบลงด้วยการเสมอกัน โปรดทราบว่าอาจมีจุดที่ว่างเปล่าในตอนท้ายของเกมในกรณีที่ผู้เล่นคนใดคนหนึ่งชนะในการเคลื่อนที่น้อยกว่า 9 ครั้ง (ไม่สามารถเกิดขึ้นได้ในกรณีที่เสมอกัน) งาน ให้บอร์ด Tic-Tac-Toe ในตอนท้ายของเกม (ในรูปแบบของสตริง, เมทริกซ์, รายการค่าคงที่ 9 ค่าสั่ง, รูปแบบที่เหมาะสมอื่น ๆ ), กำหนดผู้ชนะเกม อินพุตจะประกอบด้วยค่าที่แตกต่างและสอดคล้องกันหนึ่งสำหรับXหนึ่งสำหรับหนึ่งOและอีกคนหนึ่งที่แสดงถึงจุดที่ว่างเปล่า โปรแกรมของคุณควรจะสามารถส่งออก 3 ค่าที่ชัดเจนสอดคล้องและไม่ว่างเปล่า: หนึ่งรายการในกรณีXชนะ, อีกรายการหนึ่งในกรณีOชนะหรืออีกรายการหนึ่งหากผู้เล่นถูกผูกไว้ โปรดระบุค่าเหล่านี้ในคำตอบของคุณ คุณสามารถสันนิษฐานได้ว่าอินพุตจะเป็นบอร์ด Tic-Tac-Toe ที่ถูกต้อง กรณีทดสอบ X, O, _มีค่าที่ป้อนเข้าที่นี่; X …

14
คำนวณตัวเลขวิลสัน
รับจำนวนเต็มบวกnให้คำนวณn th จำนวน number W (n)โดยที่ และE = 1 ถ้าnมีรากดั้งเดิมแบบโมดูโลnมิฉะนั้นE = -1 ในคำอื่น ๆnมีรากดั้งเดิมถ้ามีไม่ได้อยู่จำนวนเต็มxที่ 1 < x < n-1และx 2 = 1 mod n นี่คือcode-golfดังนั้นให้สร้างรหัสที่สั้นที่สุดสำหรับฟังก์ชั่นหรือโปรแกรมที่คำนวณหมายเลขn th Wilson สำหรับอินพุตจำนวนเต็มn > 0 คุณสามารถใช้การจัดทำดัชนีแบบ 1 หรือ 0 นอกจากนี้คุณยังสามารถเลือกที่จะเอาท์พุทตัวเลขn Wilson แรก นี่คือลำดับ OEIS A157249 กรณีทดสอบ n W(n) 1 2 2 1 3 1 4 …

27
Pandigital ทวีคูณ
แรงบันดาลใจจากCMC นี้ รับจำนวนเต็มบวกมากกว่า 0 ดำเนินการดังต่อไปนี้: หากทั้งสิบหลักเดียว ( 1234567890) อยู่ในจำนวนอย่างน้อยหนึ่งครั้งให้ส่งออกจำนวนและออกจากโปรแกรม มิฉะนั้นเพิ่มจำนวนและทำซ้ำเพิ่มจำนวนการนับ การนับเริ่มต้นที่ 0 และเป็นจำนวนครั้งที่อินพุตถูกเพิ่มเป็นสองเท่า ตัวอย่างเช่นถ้าอินพุตเป็น 617283945 จะต้องมีการเพิ่มเป็นสองเท่าหนึ่งครั้งเพราะ 1234567890 มี 10 หลักทั้งหมดในนั้น นี่คือรหัสกอล์ฟที่สั้นที่สุดที่จะชนะ อินพุตอาจถูกใช้เป็นสตริงหากคุณต้องการ กรณีทดสอบ input => output 617283945 => 1 2 => 67 66833 => 44 1234567890 => 0 100 => 51 42 => 55

29
ระบบการให้เกรดแปลก ๆ
Weirdo Incorporates มีวิธีการให้คะแนนแปลก ๆ กับพนักงานของพวกเขาตามจำนวนวันที่มีอยู่ในสำนักงาน: 0 - 13 : F 14 - 170 : E 171 - 180 : D 181 - 294 : C 295 - 300 : B 301 - 365 : A Note: The range is inclusive (i.e. 0-13 means 0 days and 13 days both will …

28
รับโทรศัพท์ของคุณ! มันสั่น!
คุณเพิ่งได้รับโทรศัพท์ใหม่ แต่คุณไม่ชอบวิธีที่มันสั่นสะเทือนคุณตัดสินใจที่จะสร้างรูปแบบการสั่นสะเทือนของคุณเอง ดังนั้นคุณได้เขียนโปรแกรมที่คุณใช้คำหลักที่long, shortและpauseเพื่อให้โทรศัพท์ของคุณสั่นตามคำหลักเหล่านี้ งาน สร้างโปรแกรมขนาดเล็กที่ยอมรับสตริงของlong, shortและpauseและผลสตริงอื่นที่เป็นตัวแทนของเสียงการออกเสียงของโทรศัพท์สั่น;Rrrr - Rr longเสียงเป็นRrrr shortเสียงที่มีRr (เรื่องปลอก) pauseเป็นเส้นประ- เสียงทั้งหมดจะถูกคั่นด้วยเส้นประที่มีช่องว่างโดยรอบ' - ' กรณีทดสอบ อินพุต: long long short long short เอาต์พุต:Rrrr - Rrrr - Rr - Rrrr - Rr อินพุต: long long long short short short เอาต์พุต:Rrrr - Rrrr - Rrrr - Rr - Rr - Rr …
14 code-golf  string 

18
วิธีทำหลายจุดไข่ปลา?
เห็นได้ชัดว่าเป็นรูปไข่ แรงบันดาลใจจากข้อความแชท ความท้าทายของคุณ รับรายการหรือช่องว่างหรือสตริงของคำที่คั่นด้วยเครื่องหมายจุลภาค หากต้องการคำว่า ellipsisessieses-ify: เริ่มด้วยคำว่า เพิ่มตัวอักษรตัวแรกของคำต้นฉบับจนจบ เพิ่ม 2 ตัวอักษรสุดท้ายของคำต้นฉบับไปยังท้าย เพิ่มตัวอักษรตัวที่สอง - สุดท้ายของคำต้นฉบับไปที่ท้าย เพิ่มตัวอักษรตัวแรกของคำต้นฉบับจนจบ เพิ่มตัวอักษรตัวสุดท้ายของคำต้นฉบับจนจบ ทำซ้ำขั้นตอนที่ 5 และ 6 ครั้งเดียว คุณทำเสร็จแล้ว! คุณสามารถสันนิษฐานได้ว่า: คำที่ป้อนจะเป็นตัวอักษรและตัวเลขเท่านั้น อินพุตและเอาต์พุตสามารถเป็นสตริงหรือรายการที่คั่นด้วยช่องว่าง ข้อมูลที่ป้อนจะมีเพียงคำเดียว คำจะต้องมีความยาวอย่างน้อย 2 ตัวอักษร อินพุตจะตรงกับ regex /^[a-z0-9]{2,}( [a-z0-9]{2,})*$/i คุณสามารถมีรูปแบบอินพุตและเอาต์พุตอื่นได้ เพิ่มเติมที่จะมา ... กรณีทดสอบ: ellipsis -> ellipsisessieses goat -> goatgttagtgt covfefe -> covfefeceefcece programmer5000 -> programmer5000p000p0p0 up …
14 code-golf  string 

11
การจับคู่กรณีค้นหาแทนที่
รับสามอินพุตสตริงข้อความT; สตริงอักขระที่จะแทนที่F; และสตริงอักขระที่จะแทนที่ด้วย, R. สำหรับแต่ละย่อยของTแบบเดียวกับที่ (กรณีตาย) เป็นตัวละครF, Rแทนที่พวกเขากับตัวละครใน อย่างไรก็ตามให้เป็นกรณีเดียวกันกับข้อความต้นฉบับ หากมีตัวละครอื่น ๆ ในRกว่าตัวละครพิเศษควรจะเป็นกรณีเดียวกับที่พวกเขาอยู่ในF Rหากมีตัวเลขหรือสัญลักษณ์ในFแล้วตัวละครที่เกี่ยวข้องในควรเก็บไว้ในกรณีที่พวกเขาได้ในR จะไม่จำเป็นต้องปรากฏในRFT คุณสามารถสมมติว่าข้อความทั้งหมดจะอยู่ในช่วง ASCII ที่พิมพ์ได้ ตัวอย่าง "Text input", "text", "test" -> "Test input" "tHiS Is a PiEcE oF tExT", "is", "abcde" -> "tHaBcde Abcde a PiEcE oF tExT" "The birch canoe slid on the smooth planks", "o", " …
14 code-golf  string  code-golf  string  ascii-art  alphabet  code-golf  number  sequence  counting  code-golf  sequence  counting  code-golf  quine  source-layout  code-golf  string  code-golf  decision-problem  game  code-golf  string  quine  source-layout  subsequence  code-golf  quine  code-golf  array-manipulation  integer  code-golf  ascii-art  code-golf  sequence  integer  code-golf  kolmogorov-complexity  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  integer  code-golf  string  number  integer  code-golf  string  ascii-art  code-challenge  test-battery  expression-building  source-layout  printable-ascii  code-bowling  code-golf  number  code-golf  number  string  binary  code-golf  matrix  conversion  code-golf  number  arithmetic 

8
ค้นหารายการย่อยที่ไม่ซ้ำกันสั้นที่สุด
รับรายการของรายการค้นหารายการที่สั้นที่สุดที่เป็นรายการย่อยที่อยู่ติดกันของหนึ่งรายการ เช่นถ้าเรามี [[1,2,3], [1,2,3,4], [2,4,5,6], [1,2,4,5,6]] รายการย่อยที่อยู่ติดกันสั้นที่สุด[3,4]นั้นจะปรากฏในรายการที่สองเท่านั้น หากไม่มีรายการย่อยที่อยู่ติดกันที่ไม่ซ้ำกัน (ต้องมีรายการที่ซ้ำกันอย่างน้อยหนึ่งรายการ) ให้ส่งออกรายการว่างเปล่า นี่คือตัวอย่าง [[1,2,3], [1,2,3], [1,2]] หากมีรายการย่อยที่อยู่ติดกันหลายรายการที่มีขนาดน้อยที่สุดคุณสามารถส่งออกรายการใดรายการหนึ่งหรือรายการที่มีทั้งหมด ตัวอย่างเช่นถ้าอินพุตเป็น [[1,2,3],[2],[1],[3]] คุณสามารถส่งออกอย่างใดอย่างหนึ่ง[1,2], หรือ[2,3] [[1,2],[2,3]]หากคุณเลือกที่จะทำตัวเลือกหลังคุณสามารถส่งออกรายการเดี่ยวสำหรับกรณีที่มีทางออกเดียว ผลลัพธ์อาจเกิดขึ้นในรายการเดียวกันมากกว่าหนึ่งครั้งตราบเท่าที่ปรากฏในไม่มีรายการอื่น ตัวอย่างเช่น [[1,2,1,2],[2,1]] ควรส่งออก[1,2]เพราะ[1,2]เป็นรายการย่อยของรายการแรก แต่ไม่ใช่รายการที่สองแม้ว่าจะเป็นรายการย่อยของรายการแรกในสองวิธีที่ต่างกัน คุณสามารถป้อนรายการที่มีประเภทใดก็ได้ตราบใดที่ประเภทนั้นมีค่าที่เป็นไปได้มากกว่า 100 ค่าเช่นไม่มี Booleans นี่คือcode-golfดังนั้นคำตอบจะได้คะแนนเป็นไบต์ด้วยจำนวนไบต์น้อยกว่าจะดีกว่า กรณีทดสอบ [[1,1]] : [1] [[1],[1]] : [] [[1,1],[1]] : [1,1]

12
ค้นหาหมายเลขแอรอนที่ n
พื้นหลัง Ruth-แอรอนคู่คือคู่ของจำนวนเต็มบวกติดต่อกันnและn+1ดังกล่าวว่าผลรวมของปัจจัยสำคัญ (การนับซ้ำแล้วซ้ำอีกปัจจัยสำคัญ) ของแต่ละจำนวนเต็มมีค่าเท่ากัน ยกตัวอย่างเช่น(714,715)เป็นคู่รู ธ -อาโรนตั้งแต่714=2*3*7*17, และ715=5*11*13 2+3+7+17=5+11+13=29คู่ชื่อรู ธ - อารอนได้รับเลือกจากคาร์ลพอเมอเรนซ์ในการอ้างอิงถึงอาชีพของเบ๊บรู ธรวม714อยู่ในสถิติโลกตั้งแต่วันที่ 25 พฤษภาคม 1935 จนถึง 8 เมษายน 1974 เมื่อแฮงค์แอรอนเข้า715บ้าน คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับประวัติความเป็นมาที่น่าสนใจของตัวเลขเหล่านี้ในวิดีโอ Numberphile เป้าหมาย เขียนโปรแกรมหรือฟังก์ชั่นที่สมบูรณ์ซึ่งให้เลขจำนวนเต็มบวกnเอาท์พุทnเลขอาโรนที่nหมายเลขนั้นถูกกำหนดให้เป็นจำนวนเต็มที่มากขึ้นของnคู่รู ธ - อารอน ดังนั้นnเลขอาโรนa(n)+1ที่ 1 a(n)คือnเทอมที่ 1 ในลำดับ OEIS A039752 A039752 กรณีทดสอบ เลขสองสามตัวแรกของแอรอนคือ 6,9,16,78,126,715,949,1331,1521,1863,2492,3249,4186,4192,5406,5561,5960,6868,8281,8464,10648,12352,14588,16933,17081,18491,20451,24896,26643,26650,28449,28810,33020,37829,37882,41262,42625,43216 กฎระเบียบ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม อินพุตและเอาต์พุตอาจอยู่ในรูปแบบที่สะดวก นี่คือcode-golfคำตอบที่สั้นที่สุด (เป็นไบต์) ชนะ

12
ย่อหน้าผนวกลำดับ
งาน ภาคผนวกภาคผนวก - ลำดับถูกกำหนดซ้ำแบบนี้ a (1) = 1 a (n) = a (n-1) .n หาก n เป็นเลขคู่ a (n) = na (n-1) ถ้า n เป็นเลขคี่ ที่ไหน . แทนค่าการต่อข้อมูลจำนวนเต็ม ดังนั้นเงื่อนไขแรกไม่กี่: 1,12,312,3124,53124,531246,7531246,...นี่คือA053064 งานของคุณจะได้รับจำนวนเต็มA> 0จะกลับnเช่นว่าn TH องค์ประกอบในย่อหน้าที่ผนวกลำดับเท่ากับและถ้าไม่เช่นnมีอยู่ผลตอบแทน 0, จำนวนลบหรือข้อผิดพลาดออก ฯลฯ กฎระเบียบ การป้อนข้อมูลสามารถนำมาเป็นจำนวนเต็มสตริงรายการตัวละคร / ตัวเลขเป็นต้น สามารถพิมพ์เอาต์พุตไปที่ STDOUT หรือส่งคืน (จำนวนเต็มสตริงและอื่น ๆ ได้) กับการป้อนข้อมูลที่ไม่ถูกต้องและในกรณีที่ไม่มีเช่นnมีอยู่โปรแกรมของคุณอาจจะทำอะไร แต่กลับเป็นจำนวนเต็มบวก (เช่น. …

3
แก้ไขปัญหารถเข็น
นักปรัชญาได้ไตร่ตรองปัญหารถเข็นมานานแล้ว น่าเสียดายที่ยังไม่มีมนุษย์คนใดแก้ปัญหานี้ได้ โชคดีที่ในฐานะโปรแกรมเมอร์เราสามารถใช้คอมพิวเตอร์เพื่อแก้ปัญหาให้เราได้! อินพุต โปรแกรมของคุณจะทำหน้าที่ป้อนกราฟกำกับ (จำกัด ) (โดยมีขอบอย่างใดอย่างหนึ่งมากที่สุดจากxถึงถึงyสำหรับใด ๆxและy) พร้อมโหนดที่กำหนดและจำนวนเต็มที่ไม่ใช่ค่าลบที่แนบมากับแต่ละขอบ (แสดงถึงจำนวนคนที่ผูกติดกับแทร็กนั้น) . นอกจากนี้ทุกโหนดมี edge exit อย่างน้อยหนึ่งตัว รถเข็นเริ่มต้นที่โหนดที่กำหนด กลับกันถ้ารถเข็นที่โหนดx, (x,y)ประโยชน์เลือกขอบ yคนที่อยู่บนขอบที่ตายและรถเข็นอยู่ในขณะนี้ที่ขอบ กระบวนการนี้จะดำเนินต่อไปตลอดกาล โปรดทราบว่าผู้คนสามารถตายได้เพียงครั้งเดียวดังนั้นหากขอบ(x,y)มีnคนผูกไว้กับมันและรถเข็นวิ่งข้ามพวกเขาพูดว่า 100 ครั้งมันจะยังคงส่งผลให้เกิดการnเสียชีวิต เอาท์พุต ผู้ใช้ประโยชน์ได้เลือกในลักษณะที่จะลดจำนวนคนที่ตาย (ซึ่งรับประกันว่าจะมี จำกัด เนื่องจากมีเพียงคน จำกัด ) โปรแกรมของคุณจะแสดงผลหมายเลขนี้ รูปแบบอินพุต คุณอาจใช้กราฟอินพุตในแบบที่คุณต้องการ ตัวอย่างเช่นคุณสามารถใช้มันเป็นเมทริกซ์และนับโหนดที่กำหนดเป็นหนึ่งที่มีข้อความ 0. x1,y1,n1;x2,y2,n2;...หรือคุณอาจจะใช้สิ่งที่ต้องการ ตัวอย่างเช่น0,a,0;a,b,5;a,c,1;b,b,0;c,c,0เพื่อเป็นตัวแทนของปัญหารถเข็นมาตรฐาน (มีลูปที่ส่วนท้าย) Testcases 0,a,0;a,b,5;a,c,1;b,b,0;c,c,0 -> 1 (ไปจาก 0 ถึง a, a ถึง c …

11
นำสแควร์รูทของสตริง
แรงจูงใจ ในความท้าทายนี้งานของคุณคือการคูณสองสายการทำเช่นนี้เป็นการแนะนำวิธีการใช้สแควร์รูทของสตริง มันทำงานยังไง? รับสตริง (ตัวอย่างpub) สิ่งแรกที่คุณต้องทำคือการกำหนดรหัส ASCIIสำหรับตัวละครแต่ละตัว: "pub" -> [112, 117, 98] ถัดไปคุณจับคู่รหัสเหล่านี้กับช่วง[0..94]โดยการลบ32แต่ละค่า: [112, 117, 98] -> [80, 85, 66] ตอนนี้คุณต้องค้นหาค่าแต่ละค่าของมันโมดูโล95(เช่น40*40 % 95 = 80คุณสามารถเลือกได้55): [80, 85, 66] -> [40, 35, 16] และในที่สุดคุณจะแมปมันกลับเป็นช่วง[32..126]และแปลงกลับเป็นสตริง: [40, 35, 16] -> [72, 67, 48] -> "HC0" อันที่จริง"HC0" ⊗ "HC0" = "pub"ในขณะที่คุณสามารถตรวจสอบกับการแก้ปัญหาจากความท้าทายอื่น ๆที่นี่ คนที่คุ้นเคยกับการคำนวณแบบแยกส่วนอาจสังเกตว่ามอดูโลรากที่สอง95นั้นไม่มีอยู่เสมอตัวอย่างเช่นไม่มีรู2ท ในกรณีเช่นนี้รากที่สองของสตริงจะไม่ถูกกำหนดและโปรแกรม …

8
การทำคำแปดเหลี่ยม
เมื่อวันพฤหัสบดีที่ผู้ใช้@SpookyGengarความยินดีกับเราด้วย / เธอท้าทายแรกของเขาเกี่ยวกับการทำคำ Squared ถ้าเราเพิ่มจำนวนของด้านเป็นสองเท่าล่ะ ความท้าทาย รับสตริงเป็นอินพุตในรูปแบบที่สมเหตุสมผลใด ๆ ที่คุณต้องการ ( string, charอาร์เรย์ ... ) และเอาท์พุทการแสดงรูปแปดเหลี่ยมของอินพุต (เช่นเดียวกับในรูปแบบที่สมเหตุสมผล: string, รายการของstrings, charเมทริกซ์ ... ) ดังตัวอย่างต่อไปนี้: Input: golf Output: golf o l l o f g l o o l g f o l l o flog Input: HelloWorld Output: HelloWorld e l l …
14 code-golf  string 

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