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

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

4
ASCII มีภาษาใดบ้างที่ดีเป็นพิเศษหรือไม่?
ฉันสงสัยว่ามีภาษาลึกลับหรือการเล่นกอล์ฟที่มีเป้าหมายข้อความเอาต์พุตและ ASCII เป็นพิเศษหรือไม่? ตัวอย่างเช่น 05AB1E เริ่มต้นอย่างน้อยโดยกำหนดเป้าหมายการแปลงพื้นฐาน มีภาษากอล์ฟใด ๆ ที่กำหนดเป้าหมายเป็นข้อความและศิลปะการแสดงผลข้อความหรือไม่? ถ้าเป็นเช่นนั้นพวกเขามีหน้าคำแนะนำที่นี่และพวกเขาใช้งานทั่วไป? หมายเหตุ: ฉันไม่ได้กำลังมองหาภาษาที่สามารถแสดงผลงานศิลปะ ASCII ได้ แต่เป็นภาษาที่ออกแบบมาโดยเจตนาเพื่อให้สามารถดำเนินการท้าทายศิลปะ ASCII ได้อย่างรวดเร็วและกระชับ

3
ปัดเศษเป็น Sig Sig รูปที่
ท้าทาย รับตัวเลขxและตัวเลขnปัดเศษตัวเลขxที่nสำคัญและผลลัพธ์ผลลัพธ์ ตัวเลขสำคัญ ตัวเลขสำคัญของตัวเลขคือตัวเลขที่มีความหมายซึ่งส่งผลต่อความละเอียดในการวัด ซึ่งรวมถึงตัวเลขทั้งหมดยกเว้นเลขศูนย์นำหน้า โปรดจำไว้ว่าการนำศูนย์เป็นศูนย์หลังจุดทศนิยมยังคงเป็นตัวเลขที่ไม่สำคัญ เมื่อปัดเศษตัวเลขคุณต้องปัดเศษออกจากศูนย์หากตัวเลขต่อไปนี้มากกว่าหรือเท่ากับห้า ศูนย์ทั้งหมดต่อท้ายหลังจุดทศนิยมจะนับเป็นสำคัญ อินพุต หมายเลขแรกจะเป็นxตัวเลขที่จะปัดเศษ ตัวเลขที่สองจะเป็นnจำนวนตัวเลขสำคัญที่คุณควรปัดเศษxให้เป็น xจะเป็นตัวเลข (รหัสของคุณควรจัดการทั้งจำนวนเต็มและคะแนนลอยตัว) ระหว่าง -1,000,000,000 ถึง 1,000, 000,000 nจะเป็นจำนวนเต็มบวกระหว่าง 1 ถึง 50 ที่ครอบคลุม nจะไม่มากกว่า nunber xของตัวเลขใน การป้อนข้อมูลจะไม่เป็น0หรือรูปแบบใด0เช่นหรือ0.000000 ตัวอย่าง Inputs: 2.6754, 2 Output: 2.7 ผลลัพธ์ของ2.7000จะไม่ถูกต้องเนื่องจากศูนย์ต่อท้ายหลังจุดทศนิยมจะนับเป็นตัวเลขที่สำคัญ Inputs: 0.00034551, 4 Output: 0.0003455 Inputs: 50237.1238, 3 Output: 50200 โปรดทราบว่าสิ่งนี้จะต้องไม่มีจุดทศนิยม Inputs: 2374905, 1 Output: 2000000 …
20 code-golf  math 

16
ค้นหาสิ่งที่แปลกออกมาตามลำดับ
ความท้าทาย: พิจารณาฟังก์ชั่นF(N) = 2^N + 1ที่เป็นจำนวนเต็มบวกน้อยกว่าN 31ลำดับที่กำหนดโดยฟังก์ชั่นนี้คือ: 3, 5, 9, 17, 33, 65, 129, 257, 513, 1025, 2049, 4097, 8193, 16385, 32769, 65537, 131073, 262145, 524289, 1048577, 2097153, 4194305, 8388609, 16777217, 33554433, 67108865, 134217729, 268435457, 536870913, 1073741825 อินพุตจะถูกสร้างขึ้นดังนี้: ใช้จำนวนเต็ม5 จำนวนต่อเนื่องกันจากลำดับด้านบน แทนที่หนึ่งในนั้นด้วยจำนวนเต็มบวกที่แตกต่างกัน (ซึ่งอาจจะใช่หรือไม่ใช่ส่วนหนึ่งของลำดับข้างต้น) เลือกจัดลำดับหมายเลขผลลัพธ์ 5 ตัวเลือก ให้รายการจำนวนเต็ม 5 จำนวนหาค่าที่เปลี่ยนและไม่ได้เป็นส่วนหนึ่งของจำนวนเต็ม 5 ต่อเนื่องดั้งเดิม …

4
ตรวจสอบพล็อตต้นกำเนิดและใบไม้
ลำต้นและใบพล็อตแสดงพวงของค่าตัวเลขในกลุ่มที่ถูกกำหนดโดยทั้งหมด แต่หลักที่ผ่านมา ตัวอย่างเช่นสมมติว่าเรามีชุดข้อมูลนี้: 0, 2, 12, 13, 13, 15, 16, 20, 29, 43, 49, 101 เราสามารถผลิตลำต้นและใบไม้นี้: 0|02 1|23356 2|09 3| 4|39 5| 6| 7| 8| 9| 10|1 ก้านของแถวแรกคือ 0 ดังนั้น "ใบไม้" - ตัวเลขหลัง|- แทนค่าระหว่าง 0 รวมถึง 10 พิเศษ ใบในแต่ละก้านจะถูกจัดเรียง ลำต้นที่ไม่มีใบไม้ (เช่น 3) ยังคงปรากฏอยู่ในเนื้อเรื่อง ค่า 101 อยู่ระหว่าง 100 ค่ารวมและแบบพิเศษ 110 ค่าดังนั้นค่าของต้นกำเนิดคือ …

18
การเรียงลำดับหลายคีย์
กำหนดรายการดัชนีและรายการเลขจำนวนเต็มศูนย์หรือมากกว่าให้เอาท์พุทรายการจำนวนเต็มเรียงตามลำดับจากน้อยไปมากโดยให้ความสำคัญกับคีย์จากอินพุตแรก ตัวอย่าง ปล่อยให้ปุ่มป้อนเข้า[1, 0, 2]และรายการจะถูกป้อน[[5, 3, 4], [6, 2, 1], [5, 2, 1]]เข้าไป รายการเหล่านั้นจะต้องเรียงลำดับตามองค์ประกอบที่สองจากนั้นองค์ประกอบแรกจากนั้นองค์ประกอบที่สามตามลำดับจากน้อยไปมาก: อันดับแรกเราจัดเรียงตามค่าที่ดัชนี1:[[6, 2, 1], [5, 2, 1], [5, 3, 4]] ต่อไปเราแยกความสัมพันธ์จากการเรียงลำดับแรกโดยใช้ค่าที่ดัชนี0:[[5, 2, 1], [6, 2, 1], [5, 3, 4]] ในที่สุดเราก็แยกความสัมพันธ์ที่เหลือกับ vlues ที่ index 2(นี่ไม่ได้เปลี่ยนแปลงอะไรเลยเพราะไม่มีความสัมพันธ์เหลืออยู่) รายละเอียด การเรียงลำดับมีความเสถียร: หากองค์ประกอบสองรายการเปรียบเทียบเท่ากันด้วยความเคารพต่อคีย์การเรียงลำดับที่กำหนดพวกเขาจะต้องอยู่ในลำดับสัมพัทธ์เดียวกันในผลลัพธ์ ตัวอย่างเช่นถ้าAและBมีความเท่าเทียมกันภายใต้คีย์การเรียงลำดับได้รับและการป้อนข้อมูลที่เป็น[..., A, ..., B, ...],Aต้องถูกวางไว้ก่อนBในการส่งออก คีย์การเรียงลำดับจะไม่อ้างอิงองค์ประกอบที่ไม่มีอยู่ในรายการอินพุตอย่างใดอย่างหนึ่ง จะไม่มีการเรียงลำดับคีย์ซ้ำ ดังนั้น,[1, 2, 1]ไม่ใช่รายการของคีย์การเรียงลำดับที่ถูกต้อง …

5
ความอยากรู้อยากเห็นฆ่าแมว
บางคนบอกว่าอยากรู้อยากเห็นฆ่าแมว อื่น ๆ บอกว่ามันเป็นกล่องและพิษ RSPCA บอกว่า Erwin Schrödingerจำเป็นต้องสูญเสียสิทธิในการเป็นเจ้าของสัตว์เลี้ยง พร้อมด้วยนักเคลื่อนไหวเพื่อสิทธิสัตว์นอกบ้านของเขา แมวฆาตกรนักวิทยาศาสตร์Schrödingerได้ในที่สุดเกิดขึ้นกับสิ่งประดิษฐ์ที่ยิ่งใหญ่ที่สุดของเขา การผสมกัมมันตภาพรังสีพิเศษของ unobtanium และ handwavium ที่สามารถมีครึ่งชีวิตได้และผลิตภัณฑ์หนึ่งกรัมสามารถฆ่าสิ่งมีชีวิตใด ๆ ได้ โชคไม่ดีที่เมื่อเขาพยายามทดสอบแมวตัวสุดท้ายของเขา: บ็อบเขาลืมไปแล้วว่าแมวมีชีวิตอยู่ 9 ชีวิตและต้องฆ่า 9 กรัม ด้วยน้ำ แต่ไม่มีอาหารบ๊อบผู้น่าสงสารจะมีชีวิตอยู่ได้ 1 สัปดาห์ (7 วัน) หากผลิตภัณฑ์ไม่ฆ่าเขาก่อน ภารกิจ: เมื่อได้รับข้อมูลจำนวนมากในหน่วยมิลลิวินาทีและครึ่งชีวิตในหน่วยมิลลิวินาที - ทั้งจำนวนเต็มที่เกิน 2 ^ 31 เขียนโปรแกรมที่แสดงว่าผลิตภัณฑ์ลึกลับสุดฆ่าแมวหรือไม่หรือเป็นเวลา 1 สัปดาห์ ขีด จำกัด หมดอายุก่อน สมมติว่าเป็นจริง / ใช่ / 1 / ทุกอย่างที่ระบุในคำตอบนั้นใช้สำหรับเมื่อเขาไม่ตายจากการขาด …
20 code-golf  math 

12
เปลี่ยนเขตเวลา
ท้าทาย ให้เวลาและเขตเวลาเป็นอินพุตให้ส่งออกเวลาในเขตเวลานั้น เวลา เวลาจะได้รับในรูปแบบ 24 ชั่วโมงดังนี้: hh:mm โดยที่ hh คือชั่วโมงสองหลักและ mm คือนาทีสองหลัก โปรดทราบว่าชั่วโมงและนาทีจะเต็มไปด้วยศูนย์เช่น: 06:09 เวลาทั้งหมดที่ให้ไว้คือ UTC + 00: 00 ชั่วโมงในเอาต์พุตของคุณไม่จำเป็นต้องเป็นศูนย์ด้วยเบาะ แต่เวลาของคุณจะต้องอยู่ในรูปแบบ 24 ชั่วโมง เขตเวลา เขตเวลาจะได้รับในรูปแบบต่อไปนี้: UTC±hh:mm โดยที่±จะเป็น + หรือ a - และ hh คือสองหลักชั่วโมงและ mm คือนาทีสองหลัก (อีกครั้งเหล่านี้จะถูกเติมด้วยศูนย์) ในการหาเวลาในเขตเวลานั้นคุณสามารถเพิ่ม (ถ้าสัญลักษณ์คือ +) หรือลบ (ถ้าสัญลักษณ์คือ -) เวลาหลังจาก UTC ±จากเวลาที่ป้อน ตัวอย่างเช่นหากอินพุตเป็น24:56และUTC-02:50คุณจะลบ 2 ชั่วโมง 50 …
20 code-golf  date 

14
สามเหลี่ยมของฉันต้องการโหนดมากขึ้น
พิจารณารูปสามเหลี่ยมด้านเท่ามาตรฐานพร้อมโหนดที่มีป้ายกำกับโดยใช้พิกัด barycentric : เราสามารถเปลี่ยนสามเหลี่ยม 3 โหนดนี้เป็นสามเหลี่ยม 6 โหนดโดยการเพิ่มบรรทัดใหม่ของ 3 จุดยอด (มากกว่าหนึ่งอยู่ด้านข้างของสามเหลี่ยมโหนด 3 เดิม) ลบขอบภายในใด ๆ (แต่ไม่ใช่โหนดภายใน) และ ปรับมาตรฐานให้เป็นพิกัด: ทำซ้ำกระบวนการเพื่อไปจากสามเหลี่ยมโหนด 6 จุดไปยังสามเหลี่ยมโหนด 10 เพิ่มบรรทัดของจุดยอด 4 (อีกครั้งหนึ่งมากกว่ามีอยู่ด้านข้างของสามเหลี่ยมโหนด 6 เดิม) เอาขอบภายในใด ๆ (แต่ไม่ใช่โหนดภายใน ) และทำให้พิกัดกลับเป็นปกติอีกครั้ง: กระบวนการนี้สามารถทำซ้ำได้อย่างไม่มีกำหนด เป้าหมายของการท้าทายนี้จะได้รับเป็นจำนวนเต็มNแทนจำนวนครั้งที่กระบวนการนี้ได้ดำเนินการส่งออกโหนดทั้งหมดสำหรับรูปสามเหลี่ยมที่เกี่ยวข้องในพิกัด barycentric อินพุต โปรแกรม / ฟังก์ชั่นของคุณควรรับข้อมูลเป็นจำนวนเต็มแบบไม่ลบเดี่ยวซึ่งNแสดงว่ามีการใช้กระบวนการนี้กี่ครั้ง โปรดทราบว่าสำหรับN=0คุณควรส่งออกสามเหลี่ยมเดิมด้วย 3 โหนด อินพุตอาจมาจากแหล่งใดก็ได้ (ฟังก์ชันพารามิเตอร์ stdio ฯลฯ ) เอาท์พุต โปรแกรม / …

9
ความท้าทายของ Hexplosive ASCII-art
ในเกมวางกลยุทธ์"Hexplode"ผู้เล่นจะสลับโทเค็นลงบนกระดานหกเหลี่ยม เมื่อจำนวนโทเค็นเท่ากับจำนวนของไพ่ที่อยู่ติดกันแล้วไพ่หกเหลี่ยมนั้นและย้ายโทเค็นทั้งหมดไปยังเพื่อนบ้านที่อยู่โดยรอบ คุณสามารถเล่นเกมออนไลน์ที่นี่ ฉันชอบเกมนี้ แต่บางครั้งก็ยากที่จะรู้ว่ามีโทเค็นจำนวนเท่าใดบนไทล์เฉพาะ ฉันนับจำนวนเพื่อนบ้านเสมอ มันจะสะดวกจริง ๆ ถ้าฉันมี ASCII-art เพื่อช่วยให้ฉันจำได้ว่ามีโทเค็นจำนวนเท่าใดบนแต่ละแผ่น คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้เป็นจำนวนเต็มบวกเป็น input และผลิตเป็นตัวแทน ASCII นี้หกเหลี่ยมขนาดN แต่ละแผ่นจะเป็นจำนวนของเพื่อนบ้านที่มี เนื่องจาก 1 เป็นกรณีมุมแปลก ๆ ที่มีเพื่อนบ้านเป็นศูนย์คุณจะต้องจัดการอินพุตที่มีขนาดใหญ่กว่า 1 คุณอาจใช้หมายเลขนี้ในรูปแบบที่สมเหตุสมผลเช่น STDIN, อาร์กิวเมนต์ของฟังก์ชัน, อาร์กิวเมนต์บรรทัดคำสั่ง, จากไฟล์ ฯลฯ ผลลัพธ์อาจอยู่ในรูปแบบที่สมเหตุสมผลเช่นการพิมพ์ไปยัง STDOUT การเขียนลงไฟล์ รายการของสตริงสตริงที่ขึ้นบรรทัดใหม่ที่คั่น ฯลฯ นี่คือตัวอย่างเอาต์พุตสำหรับ 5 อินพุตแรก: 2) 3 3 3 6 3 3 3 3) 3 4 3 4 …

6
คุณสามารถเอาชนะหน่วยสืบราชการลับของอังกฤษได้หรือไม่ (ตัวแก้ Nonogram)
ถึงเวลาแล้วที่จะเริ่มภารกิจที่เต็มไปด้วยอันตรายเพื่อเอาชนะหน่วยสืบราชการลับของอังกฤษ จุดมุ่งหมายของการท้าทายนี้คือการเขียนรหัสที่สั้นที่สุดที่จะแก้ Nonogram Nonogram คืออะไร กฎนั้นง่าย คุณมีตารางกำลังสองซึ่งจะต้องเติมด้วยสีดำหรือว่างเปล่า ข้างแต่ละแถวของตารางจะแสดงความยาวของการวิ่งของสี่เหลี่ยมสีดำในแถวนั้น ด้านบนแต่ละคอลัมน์จะแสดงความยาวของการวิ่งของสี่เหลี่ยมสีดำในคอลัมน์นั้น www.games501.com ฟรีเป้าหมายของคุณคือค้นหาสี่เหลี่ยมสีดำทั้งหมด ในประเภทตัวต่อปริศนาตัวเลขนี้เป็นรูปแบบของการตรวจเอกซเรย์ที่ไม่ต่อเนื่องซึ่งวัดว่ามีการเติมเต็มของจำนวนสี่เหลี่ยมจัตุรัสในแถวหรือคอลัมน์ใด ๆ ตัวอย่างเช่นคำใบ้ของ "4 8 3" จะหมายถึงมีชุดของสี่, แปด, และสามช่องที่เติมเต็มตามลำดับโดยมีอย่างน้อยหนึ่งช่องว่างระหว่างกลุ่มที่ต่อเนื่องกัน [ 1 ] [ 2 ] ดังนั้นการแก้ปัญหาของ Nonogram ข้างต้นจะเป็น: รายละเอียดการใช้งาน คุณสามารถเลือกที่จะเป็นตัวแทนของ Nonogram ได้อย่างไรก็ตามคุณต้องการและนำมาเป็นข้อมูลในแบบที่คุณคิดว่าเหมาะสมกับภาษาของคุณ กันไปสำหรับการส่งออก เป้าหมายของความท้าทายนี้คือการทำงานให้สำเร็จ ถ้าคุณสามารถแก้ nonogram ด้วยสิ่งใดก็ตามที่โปรแกรมของคุณให้นั่นแสดงว่าถูกต้อง ข้อแม้หนึ่งคือคุณไม่สามารถใช้ตัวแก้ปัญหาออนไลน์ได้ :) ปัญหานี้มีความท้าทายอย่างมากในขั้นตอนวิธี (np-complete) ซึ่งไม่มีวิธีแก้ปัญหาที่มีประสิทธิภาพอย่างสมบูรณ์ดังนั้นคุณจะไม่ถูกลงโทษเนื่องจากไม่สามารถแก้ปัญหาที่ใหญ่กว่าได้แม้ว่าคำตอบของคุณจะได้รับรางวัลอย่างหนักถ้าเป็น สามารถรับมือกับคดีใหญ่ (ดูโบนัส) ในฐานะที่เป็นมาตรฐานโซลูชันของฉันทำงานได้สูงถึง 25x25 โดยประมาณภายใน 5-10 วินาที …

7
ลำดับการดูและพูด: ฉบับเลขโรมัน
คำอธิบายการท้าทาย ที่เราเคยมีความท้าทายไม่กี่ที่เกี่ยวข้องกับการลำดับดูและการพูด การแจ้งเตือนด่วน: ลำดับเริ่มต้นด้วย1, เงื่อนไขที่ตามมาของลำดับนี้จะถูกสร้างขึ้นโดยการแจกแจงตัวเลขแต่ละกลุ่มของตัวเลขซ้ำในระยะก่อน ดังนั้นศัพท์สองสามข้อแรกคือ: 1 "one" 11 "one one" (we look at the previous term) 21 "two ones" 1211 "one two, one one" 111221 "one one, one two, two ones" 312211 "three ones, two twos, one one" ตอนนี้เรามาทำสิ่งเดียวกัน แต่ใช้ตัวเลขโรมันแทน เราเริ่มต้นด้วยIและปฏิบัติตามกฎเดียวกัน (เราใช้กฎหลักนับตัวอักษรแทนเพื่อให้เราอ่านIVXเป็นone one, one five, one tenแทนone four, one …

13
มันเป็น wordinian หรือไม่?
เป็นวิธีที่สั้นที่สุดเพื่อดูว่าการป้อนข้อมูลเป็น wordinian โดยใช้ภาษาการเขียนโปรแกรมใด ๆ ? Wordinian เป็นคำที่มีความยาว 1 ถึงความยาวของคำดั้งเดิม ตัวอย่างเช่น, ถัง 'ฉัน' เป็นคำว่า 'ใน' เป็นคำว่า 'ถังขยะ' เป็นคำ หรือ, เวที 'a' เป็นคำว่า 'ta' เป็นคำ ( ใช่มันคือ ) 'อายุ' คือคำว่า 'stag' เป็นคำว่า 'stage' เป็นคำ อินพุต รหัสของคุณควรใช้คำและพจนานุกรมเป็นอินพุตในรูปแบบที่เหมาะสม เอาท์พุต ผลลัพธ์ควรเป็นค่าที่บ่งบอกว่าเป็นจริงหรือเท็จเพื่อบอกเราว่าคำนั้นเป็นภาษา wordinian สำหรับข้อมูลเพิ่มเติมเกี่ยว wordinians คลิกที่นี่ นี่คือรายการคำที่ฉันจะใช้เป็นอินพุตและ subwords นอกจากนี้เพื่อตอบสนองต่อ @xnor จะต้องมี subwords ของแต่ละความยาวไม่ใช่สายย่อยของ subwords โปรดทราบว่าจะใช้คำเดียวเป็นอินพุต

5
Number Plate Golf: การรับรู้
ดูเพิ่มเติมที่: การแยก บทนำ คุณกำลังทำงานกับทีมเขียนโปรแกรมของรัฐบาลซึ่งเป็นผู้เขียนโปรแกรมกล้องจับความเร็ว อย่างไรก็ตามกลุ่มคนที่ตั้งโปรแกรมคำนวณความเร็วได้ใช้พื้นที่มากเกินไปดังนั้นคุณต้องทำให้ซอฟต์แวร์จดจำหมายเลขทะเบียนมีขนาดเล็กที่สุดเท่าที่จะทำได้ ท้าทาย รับภาพของแผ่นป้ายทะเบียนคืนข้อความบนแผ่นป้าย แผ่นป้ายทะเบียนหมายเลข ต่อไปนี้เป็นอักขระทั้งหมดที่โปรแกรมของคุณต้องจดจำ: ABCDEFG H1JKLMN0 PQRSTUVW XYZ01234 56789 บันทึก บนป้ายหมายเลขอังกฤษอักขระสำหรับ I (i) และ 1 (หนึ่ง) จะเหมือนกันและอักขระสำหรับ O (o) และ 0 (ศูนย์) จะเหมือนกัน ด้วยเหตุนี้ให้ถือว่าตัวละครเป็นตัวเลขเสมอ คือหมายเลขทะเบียนต่อไปนี้คือ 10 (หนึ่งศูนย์): ตัวอย่าง C0D3 GLF B3T4 DCY M1NUS 15 YET1CGN กฎอื่น ๆ ไม่อนุญาตให้เข้าถึงอินเทอร์เน็ตและ OCR ไลบรารีและฟังก์ชั่น ป้ายหมายเลขจะมีลักษณะเหมือนกับที่แสดงไว้ด้านบนเสมอ แผ่นตัวเลขทั้งหมดจะมีขนาดเท่ากัน (จะมีความไม่ถูกต้องเนื่องจากวิธีการครอบตัด) หากคุณต้องการแผ่นป้ายหมายเลข PNG …

30
วาดรูปสี่เหลี่ยมผืนผ้า ASCII
กำหนดจำนวนเต็มสองจำนวนเป็นอินพุตในอาร์เรย์วาดสี่เหลี่ยมโดยใช้จำนวนเต็มแรกเป็นความกว้างและวินาทีเป็นความสูง หรือหากภาษาของคุณรองรับจำนวนเต็มสองตัวสามารถกำหนดเป็นอินพุตแยกกันได้ สมมติว่าความกว้างและความสูงจะไม่น้อยกว่า 3 และจะได้รับเสมอ ตัวอย่างผลลัพธ์: [3, 3] |-| | | |-| [5, 8] |---| | | | | | | | | | | | | |---| [10, 3] |--------| | | |--------| นี่คือรหัสกอล์ฟดังนั้นคำตอบที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ

5
regex ง่าย ๆ ที่สั้นที่สุดที่ตรงกับคำไบนารี
งาน กำหนดregex อย่างง่ายเป็นนิพจน์ปกติที่ไม่ว่างประกอบด้วยเพียง ตัวอักษร0และ1, การจัดกลุ่มวงเล็บ(และ), +อย่างใดอย่างหนึ่งหรือมากกว่าปริมาณการทำซ้ำ ด้วยสตริง0และ1s ที่ไม่ว่างเปล่าโปรแกรมของคุณควรค้นหา regex ที่สั้นที่สุดที่ตรงกับสตริงอินพุตแบบเต็ม (นั่นคือเมื่อจับคู่ regex ธรรมดาให้ทำท่าว่ามันถูก bookended โดย^ และ $.) หากมี regexes ที่สั้นที่สุดหลายอันให้พิมพ์ใด ๆ หรือทั้งหมด) code-golfดังนั้นการส่งที่สั้นที่สุด (เป็นไบต์) จะชนะ กรณีทดสอบ 1 -> 1 00 -> 00 or 0+ 010 -> 010 1110 -> 1+0 01010 -> 01010 0101010 -> 0(10)+ or (01)+0 011111 -> …

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