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

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

25
การแทนค่าไบนารีของตัวเลขคือ palindrome หรือไม่?
เขียนโปรแกรมเต็มรูปแบบเพื่อค้นหาว่าการแสดงเลขฐานสองของตัวเลขเป็น Palindrome หรือไม่? Sample Input 5 Sample Output YES พิมพ์YESหากการเป็นตัวแทนไบนารีคือ palindrome และNOอื่น ๆ

8
คำนวณผกผันแบบแยกส่วน
ได้รับสองตัวเลขบวกxและnมีเขียนฟังก์ชั่นที่สั้นที่สุดในการคำนวณx<2^n x^-1 mod 2^nในคำอื่น ๆ พบดังกล่าวว่าyx*y=1 mod 2^n ฟังก์ชั่นของคุณจะต้องเสร็จสิ้นในเวลาที่เหมาะสมสำหรับอย่างน้อยการn=64ค้นหาที่ละเอียดถี่ถ้วนจะไม่ทำงาน หากไม่มีค่าผกผันคุณจะต้องระบุให้ผู้โทรทราบ (ส่งข้อยกเว้นส่งคืนค่า Sentinel และอื่น ๆ ) หากคุณสงสัยว่าจะเริ่มต้นลองขยายยุคลิดอัลกอริทึม
16 code-golf 

13
หารตัวเลขด้วย 0
เราทุกคนได้รับการบอกเล่า ณ จุดหนึ่งในชีวิตของเราว่าการหารด้วย 0 นั้นเป็นไปไม่ได้ และส่วนใหญ่ข้อความนั้นเป็นจริง แต่ถ้ามีก็เป็นวิธีการที่จะดำเนินการต้องห้ามหรือไม่? ยินดีต้อนรับสู่การสร้างใหม่ล่าสุดของฉัน: b-number b- ตัวเลขเป็นตัวเลขเหมือนจำนวนเล็กน้อย: ตัวเลขหลักที่เกี่ยวข้องหมายถึงนิพจน์ที่ไม่สามารถคำนวณทางคณิตศาสตร์ได้ ( iหมายถึง-1−−-√−1\sqrt{-1} ) ในกรณีนี้จะได้รับการกล่าวถึงเป็นตัวแทนการแสดงออก{0} จากที่นี่เป็นเรื่องง่ายที่จะระบุว่าจะเท่ากัน:ขขb1010\frac{1}{0}x0x0\frac{x}{0} x0= x1⋅ 10= x bx0=x1⋅10=xข \frac{x}{0} = \frac{x}{1} \cdot \frac{1}{0} = xb งาน ได้รับการแสดงออกที่เกี่ยวข้องกับการแบ่งโดย 0 ผลผลิตมูลค่าง่ายในแง่ของขโปรดทราบว่าการป้อนข้อมูลจะอยู่ในรูปแบบของการที่ n เป็นจำนวนตรรกยะหรือใด ๆจำนวนในรูปแบบทศนิยม 0s นำหน้าและต่อท้าย 0s จะไม่ถูกรวมขขbn/0b ตัวอย่างอินพุต 4/0 1/0 0/0 80/0 -8/0 1.5/0 2.03/0 -1/0 -3.14/0 …
16 code-golf  math  number 

18
ลดความซับซ้อนของตัวเลข
คุณจำหมายเลขโทรศัพท์ 6 หรือ 7 หลักที่ปรากฏบนหน้าจอทีวีได้ไม่กี่วินาที! ด้วยเทคนิคพิเศษที่อธิบายไว้ด้านล่างคุณจะกลายเป็นสมุดโทรศัพท์ที่กำลังเดิน! เห็นได้ชัดว่าตัวเลข402จะง่ายต่อการจำกว่าจำนวน110010010และตัวเลขที่จะง่ายต่อการจำกว่าจำนวน337377 957472ซึ่งหมายความว่าหมายเลขที่จดจำไว้ในอีกด้านหนึ่งควรมีตัวเลขน้อยที่สุดเท่าที่จะเป็นไปได้และในทางกลับกันเป็นที่พึงปรารถนาว่าหมายเลขนั้นจะมีตัวเลขซ้ำจำนวนมากที่สุดเท่าที่จะทำได้ ในฐานะที่เป็นเกณฑ์สำหรับความยากลำบากในการจำเราใช้ผลรวมของจำนวนหลักในจำนวนและจำนวนของตัวเลขที่แตกต่างกันในจำนวน หมายเลขที่ถูกจดจำสามารถเขียนในระบบตัวเลขอื่นได้และอาจจะง่ายต่อการจดจำ ยกตัวอย่างเช่นจำนวนในเลขฐานสิบหกดูเหมือนว่า65535FFFF งาน คุณต้องเขียนโปรแกรมเพื่อเลือกฐานของระบบตัวเลขเพื่อลดความซับซ้อนของเกณฑ์ ฐานของระบบตัวเลขจะต้องเลือกในช่วงตั้งแต่ 2 ถึง 36 จากนั้นจะสามารถใช้ตัวเลข0-9และตัวอักษรภาษาอังกฤษA-Zเพื่อแสดงตัวเลขได้ อินพุต อินพุตมีจำนวนเต็มฐานสิบตั้งแต่ 1 ถึง 999999999 เอาท์พุต เอาท์พุทจะต้องมีฐานของระบบตัวเลข (จาก 2 ถึง 36) การลดเกณฑ์ของความซับซ้อนในการท่องจำให้น้อยที่สุดและจำนวนในระบบตัวเลขที่เลือกคั่นด้วยช่องว่างหนึ่งช่อง หากหลายฐานให้ค่าเดียวกันสำหรับเกณฑ์ให้เลือกค่าที่น้อยที่สุด หมายเหตุ ตัวอักษรต้องเป็นตัวพิมพ์ใหญ่ ( A-Z) กรณีทดสอบ อินพุตเอาต์พุต 1 2 1 2 3 2 65535 16 FFFF 123 12 A3

18
ถอดรหัสปริมาณที่มีความยาวผันแปรได้
ปริมาณความยาวตัวแปร (ยังเรียกว่าVLQหรือuintvar) คือวิธีการเข้ารหัสได้ถึงค่าจำนวนเต็ม 28 บิตโดยใช้เพียงเป็นไบต์มากที่สุดเท่าที่จำเป็น สิ่งนี้ถูกใช้ในรูปแบบไฟล์ MIDIเพื่อลดขนาดของข้อมูลเหตุการณ์บางอย่าง วิธีการทำงานค่อนข้างง่าย ในฐานะที่เป็นชุดใหญ่ของไบต์ไบต์บิตที่สำคัญที่สุด (MSB) ของแต่ละไบต์คือการ1บ่งชี้ว่า VLQ ไบต์อื่นดังต่อไปนี้ ส่วนที่เหลืออีก 7 บิตของแต่ละไบต์เป็นค่าที่ถอดรหัส ตัวอย่าง (จาก Wikipedia): [ 0x86, 0xc3, 0x17 ] => 106903 อ้างอิงเพิ่มเติม: วิกิพีเดีย , บางผู้ชาย ท้าทาย: รับปริมาณที่มีความยาวผันแปรได้แปลงเป็นค่าจำนวนเต็ม การป้อนข้อมูล: รายการของหนึ่งถึงสี่ไบต์หรือชนิดค่า 32- บิตแทน VLQ ที่ถูกต้องของจำนวนเต็ม เอาท์พุท: ค่าจำนวนเต็มของอินพุต VLQ กฎและเกณฑ์การให้คะแนน: นี่คือ code-golf ดังนั้นคำตอบที่สั้นที่สุดเป็นไบต์สำหรับแต่ละภาษาที่ชนะ กฎระเบียบมาตรฐานและเริ่มต้น I / O กฎใช้ …

8
สร้างเครื่องคิดเลข omnifix
แรงบันดาลใจ ผกผัน ประเมินนิพจน์ omnifix ที่กำหนด Omnifix เป็นเหมือนสัญกรณ์คณิตศาสตร์มัดปกติ แต่มีสำเนาเพิ่มเติมของแต่ละสัญลักษณ์รอบข้อโต้แย้ง สัญลักษณ์ด้านนอกเกิดขึ้นในวงเล็บดังนั้นจึงไม่จำเป็นต้องใช้วงเล็บเพิ่มเติม คุณต้องรองรับการบวกการลบการคูณการหารและจำนวนจริงที่เป็นบวก (สามารถลบได้-0-n-) ในช่วงที่เหมาะสมสำหรับภาษาของคุณ บวกและลบจะต้องเป็น+และ-แต่คุณอาจใช้*หรือ×บางครั้งและ/หรือ÷สำหรับการหาร สัญลักษณ์อื่นที่สมเหตุสมผลจะได้รับอนุญาตเมื่อมีการร้องขอ จุดบราวนี่สำหรับคำอธิบายและคุณสมบัติเพิ่มเติม (เช่นการดำเนินการเพิ่มเติมจำนวนลบสตริง ฯลฯ ) แม้ว่าคำตอบของคุณจะไม่มีฟีเจอร์เหล่านี้ แต่อย่าลังเลที่จะแสดงความสามารถ โปรดระบุลิงก์เพื่อทดสอบโซลูชันของคุณหากเป็นไปได้ ตัวอย่าง เพื่อความชัดเจนคำอธิบายด้านล่างใช้เครื่องหมายลบสูง ( ¯) เพื่อระบุจำนวนลบ คุณอาจส่งคืนจำนวนลบโดยใช้รูปแบบที่เหมาะสม -5-2- → 3 +2+×3×2×+→ 8 ( +2+×3×2×+→ +2+6+→ 8) -14--3-1--→ 12 ( -4--3-1--→ -14-2-→ 12) +2.1+×3.5×2.2×+→ 9.8 ( +2.1+×3.5×2.2×+→ +2.1+7.7+→ 9.8) ×3×÷-0-6-÷2÷×→ -9 …

26
ลองทำลูกบาศก์!
ตามนี้ทำให้ฉันเป็นรูปสี่เหลี่ยมจัตุรัส! คุณต้องแสดงผลลัพธ์นี้: #### # # # ### # # # # #### โดยที่ "#" ถูกแทนที่ด้วยอินพุต หากคุณป้อน "A" คุณควรจะได้รับ AAAA A A A AAA A A A A AAAA หากคุณป้อน "&" คุณควรได้รับ &&&& & & & &&& & & & & &&&& ลีดเดอร์บอร์ด นี่คือตัวอย่างข้อมูลเพื่อสร้างทั้งกระดานผู้นำปกติและภาพรวมของผู้ชนะตามภาษา แสดงตัวอย่างรหัส /* Configuration */ var QUESTION_ID = …

15
วางแผนวันอาทิตย์ของคุณ!
ใครไม่ชอบที่จะทำใจให้สบายในเช้าวันอาทิตย์ในฤดูร้อนด้วยเบียร์เย็น ๆ และทีวีหรือในฤดูหนาวที่เล่นแบดมินตันหรือสุดยอดกับเพื่อน ๆ ฉันมักจะคิดว่าการรู้ว่าคุณต้องทำใจให้สบายกี่วันในหนึ่งเดือนจะแจ้งให้คุณทราบและช่วยคุณวางแผนสิ่งที่คุณต้องการ ไม่ว่าจะนั่งอยู่หน้าคอมพิวเตอร์ของคุณและแก้ปัญหาเรื่องโค้ดกอล์ฟหรือออกไปเล่นฟุตบอล ดังนั้นช่วยฉันเขียนโปรแกรมหรือฟังก์ชั่นซึ่งจะเป็น input 2 จำนวนเต็มบวกYและMและผลจำนวนของวันอาทิตย์ในปีนั้นโดยเฉพาะอย่างยิ่ง ( Y) และเดือน ( M) (ตามปฏิทินเกรกอเรียน) ตามด้วยวันของแต่ละอาทิตย์ นอกจากนี้อย่าลืมว่ารหัสที่สั้นที่สุดชนะ ข้อ จำกัด อินพุต 1,000 <= Y <= 9999 1 <= M <= 12 เอาท์พุต DD-MM-YYYYกรณีทดสอบเหล่านี้จะมีการส่งออกจะมีวันอาทิตย์ของเดือนว่าแต่ละในปีนั้นในรูปแบบ กรณีทดสอบตัวอย่าง กรณีทดสอบ 1 ตัวอย่างอินพุต 2017 1 ตัวอย่างผลลัพธ์ 5 01-01-2017 08-01-2017 15-01-2017 22-01-2017 29-01-2017 กรณีทดสอบ 2 ตัวอย่างอินพุต 2018 …
16 code-golf  date 

1
วาดร่ายมนตร์ Ingress
ในวิถีชีวิตเกมมือถือ AR ตามสถานที่ผู้เล่นIngressสามารถแฮ็คสิ่งต่าง ๆ ที่เรียกว่าพอร์ทัลเพื่อรับไอเท็ม (หากคุณสนใจ Ingress คุณสามารถ ping ฉันในการแชทเพื่อรับข้อมูลเพิ่มเติมเชื่อฉันมันดีกว่าPokémonถ้าคุณดาวน์โหลดมันอย่าลืมเลือกความต้านทาน) วิธีเพิ่มแฮ็คเอาท์พุทอย่างมีนัยสำคัญคือminigame แฮ็ค glyphซึ่งผู้เล่นจะต้องวาด glyphs บนกริดหกเหลี่ยม โดยรวมแล้วมีร่ายมนตร์ประมาณ 115 ร่ายมนตร์ที่มีประมาณ 130 ชื่อที่ใช้จริงในเกม ร่ายมนตร์ สำหรับจุดประสงค์ของการท้าทายนี้เราจะกำหนดหมายเลขแต่ละจุดของกริดดังนี้: นี่คือรายการของร่ายมนตร์ทั้งหมดเพื่อวัตถุประสงค์ในการท้าทายนี้ รายการเป็นวัตถุ JSON ที่มีสัญลักษณ์แต่ละตัวเป็นรายการของขอบ { "ABANDON": [[1, 6], [3, 4], [4, 8], [6, 10], [8, 10]], "ACCEPT": [[3, 7], [3, 8], [7, 8]], "ADVANCE": [[0, 9], [4, 9]], …

18
ทำให้ฉันเป็นผ้าห่ม!
ฉันต้องการผ้าห่มที่มีลักษณะเช่นนี้ แต่ละแถบจะผ่าน, ใต้, เหนือ, ใต้ คุณพิมพ์ได้ไหม \\\\////\\\\////\\\\////\\\\////\\\\////\\\\//// \\//// \\//// \\//// \\//// \\//// \\//// //// //// //// //// //// //// ////\\ ////\\ ////\\ ////\\ ////\\ ////\\ ////\\\\////\\\\////\\\\////\\\\////\\\\////\\\\ \// \\\\// \\\\// \\\\// \\\\// \\\\// \\\ \\ \\\\ \\\\ \\\\ \\\\ \\\\ \\ \\\ //\\\\ //\\\\ //\\\\ //\\\\ //\\\\ //\ \\\\////\\\\////\\\\////\\\\////\\\\////\\\\//// \\//// \\//// …

7
ประเมินทรี minimax
Alice และ Bob กำลังเล่นเกมเล็กน้อย ก่อนอื่นพวกเขาจะดึงต้นไม้จากโหนดโหนด (ระบุด้วยจุดหนา) โดยไม่มีโหนดภายในที่มีตัวเลขอยู่ที่ใบไม้ โหนดใด ๆ อาจมีลูก ๆ จำนวนเท่าใดก็ได้ เราเริ่มต้นที่รูทและสิ่งแรกที่จะเล่นคืออลิซ (A) เธอต้องเลือกหนึ่งในโหนดย่อยของโหนดปัจจุบัน จากนั้นก็ถึงตาของบ๊อบและเขาก็เลือกโหนดลูก สิ่งนี้จะดำเนินต่อไปจนกว่าจะถึงโหนดลีฟ เมื่อถึงโหนดลีฟเกมจะจบ มันเป็นเป้าหมายของอลิซในการจบที่โหนดที่มีค่ามากที่สุดเท่าที่จะเป็นไปได้และเป้าหมายของ Bob จะจบที่โหนดด้วยค่าที่น้อยที่สุดเท่าที่จะเป็นไปได้ รับต้นไม้ในรูปแบบอาร์เรย์ที่ซ้อนกันคืนค่าของใบไม้ที่จะมาถึงหากอลิซและบ๊อบเล่นได้อย่างสมบูรณ์แบบ ตัวอย่าง: 18: [[67, [[100, [[67, 47], [86], 21, 16], [[46, [14], 35, 85], [71, [18, 63, 69], 99, 22], 3]]], [[18, 32, 42, 80]], [[36, 70], [86, 53, …

3
ความท้าทายเกี่ยวกับ advacado
แรงบันดาลใจจากนี้ อะโวคาโดไม่ได้รับอันตรายในการสร้างความท้าทายนี้ สวัสดีฉันมีความท้าทายฉันต้องการความช่วยเหลือในการทำอโวคาโด สังเกตอะโวคาโดศิลปะ ASCII นี้: ###### # # # #### # # # p# # ## #### # # # ###### อะโวคาโดนี้ประกอบด้วยภายนอกของ#s (โดยเฉพาะลำดับแรกและสุดท้ายของ#s ในแต่ละบรรทัด) และหลุม (รูปร่างของ#s ในอะโวคาโดที่ไม่ได้สัมผัสภายนอกอะโวคาโด) จากการทดลองอย่างเข้มงวดเกี่ยวกับอะโวคาโดศิลปะ ASCII เหล่านี้ฉันได้ค้นพบสิ่งต่อไปนี้: avocado juice in fluid ounces = number of spaces inside avocado but outside pit (the pit is marked with …

1
รองรับ Ubuntu รุ่นใดบ้าง?
รับวันที่ป้อนข้อมูลรายการของคุณจะแสดงรายการเวอร์ชันเต็มของUbuntu Linux distro ที่รองรับในวันนั้น รายการเต็มรูปแบบของทุกรุ่นที่ออกเป็นดังนี้: เวอร์ชั่นชื่อรหัสวันที่วางจำหน่ายรองรับจนถึง 4.10 Warty Warthog 2004-10-20 2006-04-30 5.04 Hoary Hedgehog 2005-04-08 2006-10-31 5.10 Breezy Badger 2005-10-13 2007-04-13 6.06 LTS Dapper Drake 2006-06-01 2009-07-14 2011-06-01 (เซิร์ฟเวอร์) 6.10 Edgy Eft 2006-10-26 2008-04-25 7.04 Feisty Fawn 2007-04-19 2008-10-19 7.10 Gutsy Gibbon 2007-10-18 2009-04-18 8.04 LTS Hardy Heron 2008-04-24 2011-05-12 …
16 code-golf  date 

2
ValiDate ISO 8601 โดย RX
ท้าทาย ค้นหา regex ที่สั้นที่สุด ตรวจสอบความถูกต้องเช่นการจับคู่ทุกวันที่เป็นไปได้ในปฏิทินเกรโกเรียนProleptic (ซึ่งใช้กับวันที่ทั้งหมดก่อนที่จะนำไปใช้ครั้งแรกใน 1582) และ ไม่ตรงกับวันใด ๆ ที่ไม่ถูกต้อง เอาท์พุต การส่งออกจึงเป็นความจริงหรือเท็จ อินพุต อินพุตอยู่ในรูปแบบวันที่ISO 8601ที่ขยายเพิ่ม 3 รูปแบบ - ไม่มีเวลา สองรายการแรกคือ±YYYY-MM-DD(ปีเดือนวัน) และ±YYYY-DDD(ปีวัน) ทั้งสองต้องการปลอกพิเศษสำหรับวันอธิกสุรทิน พวกมันถูกจับคู่อย่างไร้เดียงสาโดย RXs ที่ขยายเพิ่มเหล่านี้ (?<year>[+-]?\d{4,})-(?<month>\d\d)-(?<day>\d\d) (?<year>[+-]?\d{4,})-(?<doy>\d{3}) รูปแบบอินพุตที่สามคือ±YYYY-wWW-D(ปี, สัปดาห์, วัน) มันเป็นสิ่งที่ซับซ้อนเพราะรูปแบบการกระโดดสัปดาห์ที่ซับซ้อน (?<year>-?\d{4,})-W(?<week>\d\d)-(?<dow>\d) การตรวจสอบความถูกต้องพื้นฐาน แต่ไม่เพียงพอสำหรับการรวมกันทั้งสามจะมีลักษณะดังนี้: [+-]?\d{4,}-((0\d|1[0-2])-([0-2]\d|3[01]) ↩ |([0-2]\d\d|3[0-5]\d|36[0-6]) ↩ |(W([0-4]\d|5[0-3])-[1-7])) เงื่อนไข ปีอธิกสุรทินในปฏิทินเกรกอเรียนโกเรียนมีวันก้าวกระโดด …-02-29และทำให้มันเป็น 366 วันนานจึง…-366มีอยู่ เหตุการณ์นี้เกิดขึ้นในปีใดก็ตามที่มีเลขลำดับหารด้วย 4 แต่ไม่เท่ากับ 100 เว้นแต่จะหารด้วย …

1
ผู้ตั้งถิ่นฐานแห่ง Catan - ถนนที่ยาวที่สุด!
นี่คือบอร์ด endgame ของ Settlers of Catan: พื้นหลัง: ถนน (ชิ้นส่วนแท่งยาว) และการตั้งถิ่นฐาน (และเมือง) ถูกสร้างขึ้นโดยกระท่อมเล็ก ๆ เราเข้ารหัสการจัดวางชิ้นส่วนเหล่านี้โดยใช้รูปแบบต่อไปนี้: จากด้านบนเรามีจุดยอดและแนวนอนแนวนอนที่สามารถวางถนนได้ จากนั้นเรามีคอลัมน์ของถนนเท่านั้นและอื่น ๆ การใช้ R สำหรับสีแดง, O สำหรับออเรนจ์และ B สำหรับ Blue และ _ เพื่ออะไรเลยบอร์ดภาพจะถูกเข้ารหัสเป็น: ________RR_R_ __R_ __RR_R_RRR_____R_ B___R _B_________B__OO_OOR_ B__B_R BB_BBB_____B____RR_R_ OBB_O OO__BB_BB__OOO_OO O_O_ _O_OOO_O_____ บอร์ดแบบนี้จะเป็นสตริงอินพุตของคุณ ตัวอักษรใด ๆ[A-Z]อาจบ่งบอกถึงสีของผู้เล่น แต่จะมีได้ไม่เกินสี่สี มิฉะนั้นบอร์ดรับประกันว่าจะถูกต้องตามกฎของ Settlers ซึ่งหมายถึง: แต่ละสีจะมีเครือข่ายถนนที่ต่อเนื่องกันไม่เกินสองเครือข่ายซึ่งอาจหรือไม่อาจแยกออกจากการตั้งถิ่นฐาน / เมืองของผู้เล่นคนอื่น (อาคารจุดสุดยอด) …

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