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

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

24
12 Days of Christmas Lyrics
ฉันคิดว่านี่จะเป็นความท้าทายที่สนุกสำหรับทุกคนและฉันอยากรู้วิธีแก้ปัญหาที่คนคิด พิมพ์เนื้อเพลง "12 Days Of Christmas" On the first day of Christmas, my true love gave to me, A partridge in a pear tree. On the second day of Christmas, my true love gave to me, Two turtle doves, And a partridge in a pear tree. ... On the twelfth …

30
'เพิ่ม' ตัวอักษรในหนึ่งคำ
พ่อของฉันเป็นครูที่เกษียณอายุราชการและเขาเคยฝึกสะกดคำศัพท์และแบบทดสอบคณิตศาสตร์ร่วมกันซึ่งนักเรียนจะสะกดคำและจากนั้นให้คะแนนคำด้วยการเพิ่มตัวอักษรโดยที่ = 1, b = 2 เป็นต้น (เช่น cat = 3 + 1 + 20 = 24) สิ่งนี้ทำให้การจัดลำดับแบบทดสอบง่ายขึ้นเนื่องจากเขาเพียงแค่ต้องตรวจสอบ 'คะแนน' ไม่ถูกต้องแทนที่จะใช้คำที่สะกดผิดและได้รับประโยชน์เพิ่มเติมจากการทดสอบ 2 ทักษะในครั้งเดียว เขาจ้างเพื่อนของฉันคนหนึ่งเขียนโปรแกรมที่จะทำคะแนนให้เขาดังนั้นเขาจึงสามารถสร้างคีย์คำตอบที่มีความยาวได้โดยไม่มีข้อผิดพลาด ปัญหานี้ได้รับแรงบันดาลใจจากโปรแกรมนั้น ที่ต้องการ: ยอมรับคำใด ๆ ด้วยตัวอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ส่งคืนข้อผิดพลาดสำหรับอักขระพิเศษใด ๆ เช่นช่องว่างยัติภังค์, @ ^% # ฯลฯ a = 1, b = 2, ... และ A = 1, B = 2, ... …
17 code-golf  word 

30
ฟังก์ชันการแปลง IPv4 Integer
เขียนฟังก์ชั่นที่สั้นที่สุดเพื่อแปลงที่อยู่ IP ให้เป็นจำนวนเต็มแทนและส่งออกเป็นจำนวนเต็ม ในการเปลี่ยนที่อยู่ IPv4 เป็นการแสดงจำนวนเต็มการคำนวณต่อไปนี้เป็นสิ่งจำเป็น: แบ่งที่อยู่ IP ออกเป็นสี่ octet (Octet1 * 16777216) + (Octet2 * 65536) + (Octet3 * 256) + (Octet4) ตัวอย่างอินพุต 192.168.1.1 10.10.104.36 8.8.8.8 ตัวอย่างผลลัพธ์ 3232235777 168454180 134744072

23
Sieves ที่แตกต่าง
รับรายการจำนวนเต็มสร้างมาสก์บูลีนซึ่งดัชนีจริงสามารถใช้เพื่อกรองค่าที่แตกต่างจากรายการ ดัชนีใดที่ถูกเลือกว่าเป็นของจริงไม่สำคัญตราบใดที่มีเพียงดัชนีเดียวที่ถูกเลือกสำหรับดัชนีแต่ละชุดที่สอดคล้องกับค่าที่เหมือนกัน อินพุตจะเป็นรายการที่ไม่ว่างเปล่าของจำนวนเต็มไม่เป็นลบในรูปแบบที่เหมาะสมกับภาษาของคุณและเอาต์พุตจะเป็นรายการค่าบูลีนตามข้อกำหนดด้านบน คุณได้รับอนุญาตให้ใช้คำจำกัดความของคุณเองของความจริงและค่าเท็จในรายการผลลัพธ์ ในตัวอย่างด้านล่างของฉันฉันกำหนด1ให้เป็นความจริงและ0เป็นเท็จ [5, 4, 7, 1] Input [1, 1, 1, 1] Output Select only the values with with true indicies in the sieve [5 4 7 1] Contains zero duplicate values [5, 9, 7, 5, 6, 0, 5] [0, 1, 1, 1, 1, 1, 0] [ 9, …

29
ฉันย้อนกลับซอร์สโค้ดคุณย้อนกลับอินพุต!
อีกหนึ่งที่เห็นได้ชัดrip-offของrip-offของrip-off ลงคะแนนโหวตเหล่านั้น! งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรม / ฟังก์ชั่นที่ส่งออก / ส่งกลับสตริงอินพุต / อาร์กิวเมนต์ ส่วนที่ยุ่งยากคือถ้าฉันย้อนกลับซอร์สโค้ดของคุณเอาต์พุตจะต้องกลับด้านด้วย เพื่อความง่ายคุณสามารถสมมติว่าอินพุตเป็นสตริงบรรทัดเดียวที่มีตัวอักษร ASCII เท่านั้น (az), ตัวเลข (0-9) และเว้นวรรค ควรรองรับอินพุตที่มีความยาวอย่างน้อย 8 ตัวอักษร (ไม่เกิน 8 ตัว) พฤติกรรมสำหรับการป้อนข้อมูลที่ว่างเปล่าไม่ได้กำหนด ตัวอย่าง สมมติว่ารหัสที่มาของคุณและใส่ของมันคือABC xyzถ้าผมเขียนแทนและเรียกใช้การส่งออกจะต้องมีCBAzyx สมมติว่ารหัสที่มาของคุณและใส่ของมันคือABC 96ถ้าผมเขียนแทนและเรียกใช้การส่งออกจะต้องมีCBA69 ช่องว่างสีขาวนำหน้าหรือต่อท้ายเป็นที่ยอมรับตราบใดที่สอดคล้องกันทั้งในเอาต์พุตปกติและกลับด้าน

14
การเรียงสับเปลี่ยนในการปลอมตัว
กำหนดnnnเวกเตอร์มิติvvvกับรายการจริงพบการเปลี่ยนแปลงที่อยู่ใกล้pppของ(1,2,...,n)(1,2,...,n)(1,2,...,n)ด้วยความเคารพต่อl1l1l_1 -distance รายละเอียด ถ้ามันเป็นความสะดวกสบายมากขึ้นคุณสามารถใช้พีชคณิต(0,1,...,n−1)(0,1,...,n−1)(0,1,...,n-1)แทน หากมีการเรียงสับเปลี่ยนที่ใกล้เคียงที่สุดคุณสามารถส่งออกหนึ่งรายการหรือทั้งหมดก็ได้ l1l1l_1ระยะห่างระหว่างสองเวกเตอร์u,vu,vu,vถูกกำหนดให้เป็นd(u,v)=∑i|ui−vi|.d(u,v)=∑i|ui−vi|.d(u,v) = \sum_i \vert u_i-v_i\vert. หากคุณต้องการคุณสามารถสันนิษฐานได้ว่าอินพุตประกอบด้วยจำนวนเต็มเท่านั้น ตัวอย่าง [0.5 1] -> [1 2], [2 1] c*[1 1 ... 1] -> any permutation [1 4 2 6 2] -> [1 4 3 5 2], [1 4 2 5 3] [1 3 5 4 1] -> [2 3 …

10
เขียนฟังก์ชั่นที่ส่งคืนออบเจกต์ที่ทำซ้ำได้ของจุดที่ถูกต้องทั้งหมด 4 ทิศทางติดกับ (x, y)
ความต้องการทั่วไปในคลาสอัลกอริทึมและวิทยาการคอมพิวเตอร์โดยทั่วไปคือการทำซ้ำ 4 ทิศทางในตารางหรือเมทริกซ์ (เช่นใน BFS หรือ DFS) สิ่งนี้ดูเหมือนจะส่งผลให้เกิดรหัส clunky และ verbose จำนวนมากที่มีการคำนวณและการเปรียบเทียบจำนวนมากภายในลูป ฉันเห็นวิธีการต่าง ๆ มากมาย แต่ฉันไม่สามารถสั่นคลอนความรู้สึกว่ามีวิธีรัดกุมกว่านี้ ความท้าทายคือการเขียนฟังก์ชั่นบริสุทธิ์ที่กำหนดความกว้างและความสูงของระนาบ จำกัดn, mที่จุดกำเนิด(0,0)และพิกัด(x,y)ที่สามารถเป็นตัวแทนของจุดที่ถูกต้องภายในระนาบนั้นส่งคืนวัตถุที่ซ้ำได้ของทุกจุดภายในระนาบที่มีทิศทาง 4 (x,y)เพื่อที่อยู่ติดกัน เป้าหมายคือการกำหนดฟังก์ชั่นนี้ให้น้อยที่สุดเท่าที่จะเป็นไปได้ ตัวอย่างบางส่วนเพื่อช่วยแสดงให้เห็นถึงอินพุต / เอาต์พุตที่ถูกต้อง: n = 5 (y-axis), m = 3 (x-axis) (zero-based) matrix = [ [A, B, C], [D, E, F], [G, H, I], [J, K, L], [M, …

2
เขียนตัวรับรังสีที่ชุบแข็งด้วยรังสี
ภารกิจคือการเขียนผู้ฉายรังสีที่ชุบแข็งด้วยรังสี ฉันหมายความว่ายังไงกันแน่? irradiator เป็นโปรแกรมที่เมื่อได้รับสตริงเป็นอินพุตจะส่งออกเวอร์ชันที่เป็นไปได้ทั้งหมดของสตริงโดยลบหนึ่งอักขระ ตัวอย่างเช่นเมื่อได้รับอินพุทHello, world!แล้วโปรแกรมควรส่งออก: ello, world! Hllo, world! Helo, world! Helo, world! Hell, world! Hello world! Hello,world! Hello, orld! Hello, wrld! Hello, wold! Hello, word! Hello, worl! Hello, world อย่างไรก็ตามเครื่องฉายรังสีจะต้องได้รับการปกป้องจากรังสีดังนั้นรังสีที่คุณเขียนจะต้องอยู่รอดเมื่อใส่เข้าไปในตัวมันเอง กล่าวคือเมื่อลบหนึ่งไบต์ของโปรแกรมของคุณโปรแกรมจะยังคงทำงานได้อย่างถูกต้อง กรณีทดสอบ abc -> bc; ac; ab foo bar -> oo bar:fo bar:fo bar:foobar:foo ar:foo br:foo ba source …

8
จิมมี่ต้องการความช่วยเหลือของคุณ!
ดูเหมือนว่าเมื่อเร็ว ๆ นี้ได้มีการมาก Jimmys ตกไปสู่ความตายของพวกเขาสามารถมองเห็นได้ที่นี่ , และนี่คือที่ที่คุณถูกถามเพื่อตรวจสอบว่าจิมมี่จะตก ถึงเวลาที่เราจะหยุดความบ้าคลั่งนี้และพยายามช่วยจิมมี่ จิมมี่มีสามส่วนของร่างกาย/, oและ\จัดเช่นนี้ /o\ -แพลตฟอร์มจะแสดงด้วย จิมมี่จะตกลงมาจากแพลตฟอร์มของพวกเขาหากพวกเขามีสองส่วนของร่างกายที่ไม่ได้อยู่เหนือแพลตฟอร์มโดยตรง ตัวอย่างบางส่วน: /o\ - ------- -จิมมี่จะสมดุลเนื่องจากทุกส่วนของร่างกายของพวกเขาดังกล่าวข้างต้น /o\ ------ --- จิมมี่จะมีความสมดุลตั้งแต่สองส่วนของร่างกายอยู่เหนือ-s /o\ -- ---- -- จิมมี่จะทรงตัวแม้ว่าพวกเขาจะแยกระหว่างสองแพลตฟอร์ม /o\ - จิมมี่จะไม่สมดุลเนื่องจากร่างกายสองส่วนไม่ได้อยู่เหนือแท่น เนื่องจากอุปทานแพลตฟอร์มของฉันเหลือน้อยฉันจึงมีเฉพาะแพลตฟอร์มที่มีความยาว 5 และเป็นสิ่งสำคัญที่เราจะใช้ให้น้อยที่สุด งานของคุณคือรับอินพุตของ Jimmys และส่งออกสตริงของแพลตฟอร์มซึ่งจะบันทึก Jimmys ทั้งหมดในอินพุต เอาต์พุตของคุณต้องใช้แพลตฟอร์มน้อยที่สุดเท่าที่จะเป็นไปได้ แต่แต่ละแพลตฟอร์มต้องเป็น 5-ความกว้าง 5 โปรดทราบว่ากฎของแพลตฟอร์มที่มี-ความกว้าง5 หมายความว่าแต่ละแพลตฟอร์มจะต้องมีช่องว่างระหว่างพวกเขา----------ไม่ถูกต้องในผลลัพธ์เนื่องจากจะถูกพิจารณาว่าเป็นแพลตฟอร์มที่มีความยาว 10 และไม่ใช่แพลตฟอร์มที่มีความยาว 5 สองแห่ง กรณีทดสอบ /o\ …

20
แถวที่มีส่วนมากที่สุด
ให้เมทริกซ์ที่ไม่ว่างเปล่าของจำนวนเต็มแบบไม่ลบคำตอบที่แถวที่ไม่ซ้ำกันส่วนใหญ่รวมกับผลรวมขององค์ประกอบในเมทริกซ์ ตอบโดยการบ่งชี้ที่สมเหตุสมผลเช่นมาสก์ของลำดับแถวที่ไม่ซ้ำกันของการปรากฏตัว (หรือเรียงลำดับ) หรือดัชนี (เป็นศูนย์หรือหนึ่งตาม) ของเหล่านั้นหรือ submatrix ประกอบด้วยแถว (ในลำดับใด ๆ ) หรือบางส่วน ชนิดของพจนานุกรมสร้าง ... - แต่อธิบายเถอะ! ตัวอย่าง [[1,2,3],[2,0,4],[6,3,0],[2,0,4],[6,3,0],[2,0,4]]: แถวที่ไม่ซ้ำกัน[1,2,3], [2,0,4]และ[6,3,0]แต่ละคนตามลำดับที่เอื้อต่อ 6, 6 และ 9 ในแต่ละครั้งที่พวกเขาเกิดขึ้น อย่างไรก็ตามพวกเขาเกิดขึ้นหนึ่งครั้งสามครั้งและสองครั้งตามลำดับดังนั้นสิ่งที่เกิดขึ้นทั้งหมดของพวกเขามีส่วนร่วม 6, 18 และ 18 รวมทั้งหมด (42) ดังนั้นสองแถวหลังเป็นแถวที่มีส่วนมากที่สุด คำตอบที่ถูกต้องคือ: [false,true,true] มาสก์ในลักษณะ / ลำดับการจัดเรียงหรือ [1,2]/ [2,3] ศูนย์ / ดัชนีหนึ่งฐานของด้านบนหรือ [[2,0,4],[6,3,0]] แถวที่แท้จริง ⋮ [[1,2],[3,1],[2,3],[1,2],[3,1],[2,3],[1,2]] [false,false,true](สั่งลักษณะ) / [false,true,false](เรียงลำดับ) …

9
ข้อเท็จจริงปฏิทิน XKCD
แรงบันดาลใจ โพสต์ที่มีได้รับอนุญาต พิมพ์หนึ่งใน "ข้อเท็จจริง" ปฏิทิน XKCD ที่เป็นไปได้: คุณสามารถรับข้อความและโครงสร้างแบบดิบได้จากการใช้การอ้างอิง APL ของฉันหรือจากการอธิบายการถอดเสียงของ XKCD (รวมถึงข้อความหัวเรื่องภายใต้ภาพประกอบ) กฎระเบียบ ที่โหนดการตัดสินใจทุกครั้งจะต้องมีโอกาสสุ่ม (หลอก) เท่ากันของแต่ละตัวเลือก คุณสามารถใช้ตัวพิมพ์ใหญ่ทั้งหมดได้ คุณต้องสร้างสามประโยค; คำถามเหตุผลและข้อความชื่อเรื่อง ประโยคทั้งสามควรจบลงด้วย?, .และ.ตามลำดับและแยกออกจากกันด้วยช่องว่างเดียว พื้นที่สีขาวพิเศษเพียงอย่างเดียวที่คุณอาจมีคือหนึ่งช่องว่างต่อท้ายและ / หรือตัวแบ่งบรรทัด ตัวอย่าง Did you know that the Latest Sunset drifts out of sync with the Zodiac because of time zone legislation in Indiana? Apparently it's getting worse …

26
รหัสนี้ไม่ยากเกินไปใช่ไหม
คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นในภาษาใด ๆ ที่แสดงรูปแบบนี้: ~|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||~ |~|||||||||||||||||||||||||||||||||||||||||||||||||||||||||~| ||~|||||||||||||||||||||||||||||||||||||||||||||||||||||||~|| |||~|||||||||||||||||||||||||||||||||||||||||||||||||||||~||| ||||~|||||||||||||||||||||||||||||||||||||||||||||||||||~|||| |||||~|||||||||||||||||||||||||||||||||||||||||||||||||~||||| ||||||~|||||||||||||||||||||||||||||||||||||||||||||||~|||||| |||||||~|||||||||||||||||||||||||||||||||||||||||||||~||||||| ||||||||~|||||||||||||||||||||||||||||||||||||||||||~|||||||| |||||||||~|||||||||||||||||||||||||||||||||||||||||~||||||||| ||||||||||~|||||||||||||||||||~|||||||||||||||||||~|||||||||| |||||||||||~|||||||||||||||||~|~|||||||||||||||||~||||||||||| ||||||||||||~|||||||||||||||~|||~|||||||||||||||~|||||||||||| |||||||||||||~|||||||||||||~|||||~|||||||||||||~||||||||||||| ||||||||||||||~|||||||||||~|||||||~|||||||||||~|||||||||||||| |||||||||||||||~|||||||||~|||||||||~|||||||||~||||||||||||||| ||||||||||||||||~|||||||~|||||||||||~|||||||~|||||||||||||||| |||||||||||||||||~|||||~|||||||||||||~|||||~||||||||||||||||| ||||||||||||||||||~|||~|||||||||||||||~|||~|||||||||||||||||| |||||||||||||||||||~|~|||||||||||||||||~|~||||||||||||||||||| ผลลัพธ์ประกอบด้วย 20 บรรทัดละ 61 ตัวอักษร กฎระเบียบ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม อาจมีการขึ้นบรรทัดใหม่ที่ส่วนท้ายที่ท้ายของเอาต์พุต อาจไม่มีช่องว่างต่อท้ายบนบรรทัดใด ๆ ของเอาต์พุต โดยไม่ต้องขึ้นบรรทัดใหม่ในการตรวจสอบ MD5 fde4e3b4606bf9f8c314131c93988e96ของการส่งออกเป็น ด้วยการขึ้นบรรทัดใหม่ในการตรวจสอบ MD5 1f0b43db4fec6594be202c8339024cb7ของการส่งออกเป็น นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดในไบต์ชนะ

23
มาขยับรถแลนด์โรเวอร์ดาวอังคารกันเถอะ!
สรุป ภารกิจคือการนำทางยานสำรวจดาวอังคารและบอกพิกัดและทิศทางสุดท้าย การป้อนข้อมูล: อินพุตแรก: ก่อนอื่นโปรแกรมของคุณจะต้องรับอินพุตซึ่งจะอยู่ในรูปแบบต่อไปนี้: [X-Coordinate],[Y-Coordinate],[Direction] ทิศทางจะต้อง: NหรือSหรือEหรือW(ตัวอักษรเริ่มต้นของภาคเหนือ, ใต้, ตะวันตก, ตะวันออก) ตัวอย่าง: 10,20,N(x = 10, y = 20, direction = N (North)) อินพุตที่สอง: การป้อนข้อมูลที่สองประกอบด้วยชุดของR, L, Mสำหรับขวา, ซ้ายและย้ายตามลำดับ สำหรับRและL(ขวาและซ้าย) ทิศทางของรถแลนด์โรเวอร์จะต้องเปลี่ยนตาม สำหรับMรถแลนด์โรเวอร์จะต้องเคลื่อนที่ไปข้างหน้า 1 คันในทิศทางที่มันเคยเคลื่อนที่ก่อน กฎสำหรับการคำนวณพิกัด: N = Y + 1 E = X + 1 S = Y - 1 W = …

6
ลูกบอลจะลงจอดที่ไหน?
รับสตริงที่บรรทัดแรกมีช่องว่างและหนึ่งจุด ( ., "ลูกบอล") ตามด้วยบรรทัดที่มีช่องว่าง, เครื่องหมายทับ/ซ้าย ( \) และเครื่องหมายแบ็กสแลช ( ) กำหนดคอลัมน์ที่ลูกบอลจะตกลงหลังจากตกจากตำแหน่งเริ่มต้น . แต่ละ/ย้ายไปทางซ้าย 1 คอลัมน์และ\ย้ายไปทางขวา 1 คอลัมน์ ตัวอย่างอินพุต . / \ \ / / \ \/ \ \ /\ \ /\ \ \ / ตัวอย่างผลลัพธ์ ลูกบอลเริ่มต้นในคอลัมน์ 5 ไป/ที่บรรทัดที่ 3 จากนั้นลูกบอลทั้งสาม\ในบรรทัดที่ 5 ถึง 7 สำหรับตำแหน่งสุดท้ายของ: 7 โปรดทราบว่าคอลัมน์นั้นมีการจัดทำดัชนี 1 ส่วนใหญ่เพื่อความสอดคล้องกับข้อกำหนดของโปรแกรมแก้ไขข้อความ กรณีขอบ …

3
Regex ย้อนกลับ - สลายการแสดงออกปกติ
ปัญหา ฉันมีสำนวนปกติที่ต้องใช้ในบางโค้ด แต่ฉันใช้ภาษาการเขียนโปรแกรมที่ไม่รองรับ regex! โชคดีที่ฉันรู้ว่าสตริงทดสอบจะมีความยาวสูงสุดและจะประกอบด้วย ASCII ที่พิมพ์ได้เท่านั้น ความท้าทาย คุณต้องป้อน regex และตัวเลขnและส่งออกทุกสตริงที่ประกอบด้วย ASCII ที่พิมพ์ได้ (รหัส ASCII 32 ถึง 126 รวมถึง~ไม่มีแท็บหรือบรรทัดใหม่) ที่มีความยาวน้อยกว่าหรือเท่ากับnที่ตรงกับ regex นั้น คุณไม่สามารถใช้นิพจน์ทั่วไปหรือฟังก์ชันจับคู่ regex ในรหัสของคุณได้เลย นิพจน์ทั่วไปจะถูก จำกัด ดังต่อไปนี้: ตัวอักษรตัวอักษร (และหนีออกมาซึ่งบังคับให้ตัวละครที่จะเป็นตัวอักษรเพื่อให้\.เป็นตัวอักษร., \nเป็นตัวอักษรn(เทียบเท่าเพียงn) และ\wเทียบเท่ากับw. คุณไม่จำเป็นต้องลำดับการสนับสนุนการหลบหนี.) . - อักขระตัวแทน (อักขระใด ๆ ) คลาสอักขระ[abc]หมายถึง "a หรือ b หรือ c" และ[d-f]หมายถึงอะไรตั้งแต่ d ถึง f (เช่น …

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