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

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

2
ส่องสว่าง Roguelike
ให้บอร์ดเขียนโปรแกรมหรือฟังก์ชั่นที่สั้นที่สุดเพื่อแสดงหรือย้อนกลับไปว่าตัวละครใดที่อยู่ในสายตาของผู้เล่น ตัวละครอยู่ในสายตาถ้าเป็นไปได้ที่จะลากเส้นระหว่างมันกับผู้เล่นโดยไม่ต้องข้ามตัวละครใด ๆ ที่ขวางการมองเห็น การป้อนข้อมูล: @แสดงถึงตำแหน่งของผู้เล่น จะมีเพียงหนึ่งในสิ่งเหล่านี้ในอินพุต อักขระใด ๆ ที่ตรงกับ regex [#A-Z]บล็อกการมองเห็น ตัวอักษรใด ๆ ที่ตรงกับที่[ a-z]อนุญาตให้มองเห็น จะไม่มีอักขระที่ไม่ถูกต้อง คุณรับประกันอินพุตแบบสี่เหลี่ยม เส้นถูกกำหนดดังนี้: นิยามเวกเตอร์ให้มีขนาดและทิศทาง ทิศทางคือหนึ่งใน N, NE, E, SE, S, SW, W, NW ขนาดคือจำนวนตัวอักษรตามทิศทางนั้นที่จะนับ ปล่อยเวกเตอร์เริ่มต้นเรียกว่า d 1 ; เวกเตอร์ที่สองเรียกว่า d 2 หนึ่งใน d 1หรือ d 2จะต้องมีขนาดของ1; อื่น ๆ อาจมีขนาดใด ทิศทางของd 1จะต้องอยู่ติดกับทิศทางของd 2 (เช่น: N …
14 code-golf 

4
ไฮไลต์ด้านไวยากรณ์สำหรับ Greater Golf!
นักกอล์ฟ เราได้รวมตัวกันเพื่อผลิตรหัสที่รัดกุมมีฟังก์ชั่นที่สวยงามและน่าเกลียดยิ่งกว่า Phantom of the Opera จากนวนิยายดั้งเดิม ถึงเวลาแล้วที่เราจะนำความงามกลับคืนสู่โลกแห่งการเขียนโปรแกรม ด้วยสี ในทางที่กระชับความสวยงามในการใช้งานก็น่าเกลียดแล้ว Phantom of the Opera จากนวนิยายต้นฉบับ เราจะเข้ารหัสไฮไลท์ไวยากรณ์ที่มีสีสัน ในจำนวนที่สั้นที่สุดของรหัสที่เป็นไปได้ คุณจะได้รับผ่านไฟล์อินพุตหรือ Stdin ไฟล์ C ที่ถูกต้อง ไฟล์ C จะใช้การประชุมบรรทัดที่คุณเลือกและจะมีเฉพาะอักขระ ASCII 32-126 คุณต้องแปลงให้เป็นไฟล์ HTML ที่แสดงอย่างถูกต้องใน Chrome อย่างน้อยซึ่งจะแสดงรหัสต้นฉบับพร้อมกับการเน้นไวยากรณ์ ผลลัพธ์อาจอยู่ในไฟล์หรือไปยัง Stdout คุณต้องเน้น: สตริงและอักขระทั้งหมด (รวมถึงอักขระเครื่องหมายคำพูด) เป็นสีเขียว (# 00FF00) สตริงอาจมีอักขระที่ใช้ Escape คำสงวน C ทั้งหมดเป็นสีน้ำเงิน (# 0000FF) ความคิดเห็นทั้งหมดเป็นสีเหลือง (# FFFF00) …
14 code-golf  string 

4
ทำการทดสอบแบบปรนัย
ฉันเสนอให้คุณทดสอบ! การทดสอบของคุณคือการทดสอบ การทดสอบคือการทดสอบผู้ทดสอบด้วยการทดสอบที่ผู้ทดสอบให้ในจำนวนรหัสการทดสอบ shor คุณจะให้การทดสอบแบบปรนัยที่คุณได้รับเป็นอินพุต ในการท้าทายนี้คุณต้องรับอินพุตดังนี้: 1. Our site is called Programming Puzzles & Code ________. A: Debugging *B: Golf C: Hockey D: Programming 2. What is the *most* popular tag on our site? A: [debug] B: [program] *C: [code-golf] D: [number] E: [c++] 3. We are part of the …
14 code-golf 

12
จิ๊กซอว์เหยือก 3 และ 5 ลิตร
คุณอาจเคยเห็นสิ่งนี้ในDie Hard: With Vengeance ... คำถามนี้มีพื้นฐานมาจากปริศนาเหยือก 3 และ 5 ลิตรที่โด่งดัง แต่มีความแตกต่างเล็กน้อย หารหัสบางส่วนที่ให้จำนวนเต็มตั้งแต่ 1 ถึง 100 จะให้คำแนะนำที่รวดเร็วที่สุดในการวัดลงในถังน้ำจำนวนลิตรที่สอดคล้องกันจากน้ำพุโดยใช้เหยือก 3 ลิตรและเหยือก 5 ลิตร ไม่มีการไล่ระดับสีบนเหยือกอย่างใดอย่างหนึ่ง น้ำพุนั้นมีน้ำมากและถังนั้นก็จะถูกปล่อยออกไปเมื่อเริ่มต้นการประมวลผลของรหัสแต่ละครั้ง คุณไม่สามารถเข้าถึงน้ำจากถังเมื่อเข้าไปในถัง รูปแบบของการดำเนินการเป็นดังนี้: การป้อนข้อมูล: 4 ตัวอย่างเช่น. เอาท์พุต เอาท์พุทแต่ละขั้นตอนที่มีหมายเลขตามที่แสดงแล้วตามด้วยปริมาณของเหยือก 5L เหยือก 3L และถัง รูปแบบการนับยังแสดงด้านล่าง จำนวนขั้นตอนจะต้องถูกส่งออกในตอนท้ายของขั้นตอน 1) Fill 5L jug 5L: 5, 3L: 0, T: 0 2) Pour from 5L jug …

30
วิธีที่สั้นที่สุดในการใช้ทฤษฎีบทพีทาโกรัส
ใครไม่รักทฤษฎีบทพีทาโกรัสที่² + b² = c²? เขียนวิธีที่สั้นที่สุดที่คุณสามารถทำได้ในภาษาใด ๆ ที่มีค่า a และ b และพิมพ์ออกมา "ด้านตรงข้ามมุมฉากของสามเหลี่ยมมุมฉากนี้คือ" + c เก็บ c ถึงทศนิยมสามตำแหน่งเท่านั้น
14 code-golf 

12
เคล็ดลับสำหรับการเล่นกอล์ฟใน MATLAB
คุณมีคำแนะนำทั่วไปเกี่ยวกับการเล่นกอล์ฟใน MATLAB อย่างไร ฉันกำลังมองหาแนวคิดที่สามารถนำไปใช้กับปัญหารหัสกอล์ฟโดยทั่วไปซึ่งอย่างน้อยค่อนข้างเฉพาะกับ MATLAB (เช่น "ลบความคิดเห็น" ไม่ใช่คำตอบ) กรุณาโพสต์หนึ่งเคล็ดลับต่อคำตอบ
14 code-golf  tips  matlab 

9
จำนวนกระโดดขั้นต่ำ
กำหนดลำดับของตัวเลขค้นหาจำนวนกระโดดขั้นต่ำที่จะไปจากตำแหน่งเริ่มต้นไปยังจุดสิ้นสุดและกลับมาที่ตำแหน่งเริ่มต้นอีกครั้ง แต่ละองค์ประกอบของลำดับหมายถึงจำนวนการเคลื่อนไหวสูงสุดที่เราสามารถเคลื่อนที่ได้จากตำแหน่งนั้น ที่ตำแหน่งใด ๆ คุณสามารถกระโดดได้ที่ max k ย้ายโดยที่ k คือค่าที่เก็บไว้ที่ตำแหน่งนั้น หลังจากถึงจุดสิ้นสุดคุณสามารถใช้เฉพาะตำแหน่งเหล่านั้นสำหรับการกระโดดซึ่งไม่ได้ใช้ก่อนหน้านี้สำหรับการกระโดด อินพุตจะถูกกำหนดเป็นลำดับตัวเลขโดยคั่นด้วยช่องว่างเดี่ยว เอาต์พุตควรเป็นตัวเลขเดี่ยวซึ่งเป็นจำนวนกระโดดขั้นต่ำที่ใช้ หากไม่สามารถไปยังจุดสิ้นสุดและกลับมาที่ตำแหน่งเริ่มต้นให้พิมพ์-1 การป้อนข้อมูล: 2 4 2 2 3 4 2 2 เอาท์พุท: 6 (3 ถึงจุดสิ้นสุดและ 3 เพื่อกลับมา) อินพุต 1 0 เอาท์พุต -1 บันทึก สมมติว่าตัวเลขทั้งหมดในลำดับนั้นไม่เป็นลบ แก้ไข 1 บรรทัด "ดังนั้นจึงควรมีความชัดเจนว่าสามารถข้ามจากตำแหน่งสุดท้ายได้เสมอ" อาจสับสนดังนั้นฉันลบมันออกจากคำถาม มันจะไม่มีผลกับคำถาม เกณฑ์การชนะ: ผู้ชนะจะได้รับรหัสที่สั้นที่สุด

4
ไม่มีการแตกแขนง
ใครก็ตามที่อยู่ในระดับปานกลางถึงการเพิ่มประสิทธิภาพโค้ดระดับต่ำรู้เกี่ยวกับภัยของการแตกแขนงไม่ว่าจะเป็นการใช้คำสั่งลูปหรือคำสั่งที่เลือกความเป็นไปได้ของการคาดคะเนสาขาเป็นสิ่งที่น่ากลัวมาก ปัญหาง่าย ๆ สามารถแก้ไขได้ดีกว่าด้วยการคำนวณทางคณิตศาสตร์อย่างง่ายลองทำกันเถอะ สำหรับปัญหาต่อไปนี้ตัวแปรทั้งหมดเป็นจำนวนเต็ม 32 บิตที่ไม่ได้ลงชื่อและรหัสที่อนุญาตเท่านั้นคือชุดคำสั่งธรรมดาที่เกี่ยวข้องกับตัวดำเนินการต่อไปนี้เท่านั้น: + addition - subtraction * multiplication / integer division, rounds down, division by 0 not allowed % modulo & binary and | binary or ^ binary exclusive or >> bitshift right << bitshift left Logic operators, return 1 if the expression is true …

4
Ratetod text fexir
ฉัน heva ข้อความแปลก ๆ นี้ที่ vewols ดูเหมือนจะเป็น ratetod: ฉันเป็นข้อความที่เขียนไม่ดี คนบ้าบางคนเล่นตามคำสั่งของเสียงสระ โปรดแก้ไขฉัน! ดังนั้นฉันจึงต้องการ pragrom ที่สามารถให้ vewols (และตัวอักษร 'y' ตามที่ปรากฏ) กลับมาเพื่อให้ข้อความนั้นเป็น agian แบบเร่ร่อน Ouy สามารถ choeso lungaega ของ ouyr chieco privedod ouy meka cempleto pragrom (ดังนั้นไม่ใช่แค่ finctoun) yntre สามารถเป็น unpit feild, text feli หรือ cammond leni The uutpot mya olsa vyra เป็น …
14 code-golf 

10
สร้างตัวแยกวิเคราะห์ Twitter
บทนำ คุณใช้ Twitter (สมมติว่าไม่ใช่) ซึ่งคุณ จำกัด ไว้ที่ 140 ตัวอักษรต่อทวีตเดียวที่คุณต้องการแบ่งปันกับคนทั่วโลก หากคุณต้องการทวีตไปยังที่อยู่ Gettysburgของผู้ติดตาม Abraham Lincoln คุณจะต้องแยกข้อความออกเป็นหลาย ๆ ตัวละคร 140 ตัวเพื่อที่จะได้รับข้อความทั้งหมด อย่างไรก็ตามชิ้นเหล่านั้นไม่ควรยาว 140 ตัวอักษรเสมอไป พูดเช่นเราแบ่งคำพูดออกเป็น 17 ตัวอักษรเราจะจบลงด้วยทวีตเหล่านี้: สี่คะแนนและ SE VEN YEARS AGO ของเรา พ่อรู้ตัว รูปแบบนี้ TINENT A NATI ใหม่ ได้รับในลิตร (และอื่น ๆ ) นั่นไม่ดีเลย! เมื่อคำแต่ละคำแตกสลายมันก็ยากที่จะเข้าใจว่าคุณกำลังพยายามพูดอะไร นอกจากนี้ใน twitterverse หนึ่งในผู้ติดตามของคุณอาจพบทวีตที่เฉพาะเจาะจงและไม่ทราบว่ามีข้อความมากขึ้นดังนั้นคุณจะต้องกำหนดหมายเลขทวีตของคุณเพื่อให้พวกเขามีบริบทในการทำงาน (ยังคงใช้ชิ้นอักขระ 17 ตัว ): (1/7) …
14 code-golf  string 

4
สาขาแตกต่างกันใน x86 / x86-64 โดยใช้เฉพาะอักขระ ASCII ที่มองเห็นได้ซึ่งพิมพ์ได้ในรหัสเครื่อง
ภารกิจนั้นง่าย: เขียนโปรแกรมที่แตกต่างใน x86 (32- บิต) และ x86-64 (64- บิต) โดยใช้เฉพาะอักขระ ASCII ที่มองเห็นได้ที่พิมพ์ได้ 0x21 ... 0x7e (ไม่อนุญาตให้เว้นวรรคและเดล) ในรหัสเครื่อง . ไม่อนุญาตให้ประกอบแบบมีเงื่อนไข ไม่อนุญาตให้ใช้การเรียก API ไม่อนุญาตให้ใช้รหัสโหมดเคอร์เนล (แหวน 0) รหัสจะต้องทำงานโดยไม่ทำให้เกิดข้อยกเว้นทั้ง IA-32 และ x86-64 ใน Linux หรือใน OS ที่ได้รับการป้องกันอื่น ๆ การทำงานจะต้องไม่ขึ้นอยู่กับพารามิเตอร์บรรทัดคำสั่ง คำแนะนำทั้งหมดจะต้องเข้ารหัสในรหัสเครื่องโดยใช้เฉพาะอักขระ ASCII ในช่วง 0x21 ... 0x7e (33 ... 126 ทศนิยม) เช่น cpuidไม่มีข้อ จำกัด (เป็น0f a2) …

4
การวาดอวน 3d - ของแข็งอย่างสงบ
นี่เป็นรุ่นพื้นฐานของการวาดอวน 3 มิติที่ค่อนข้างยากกว่า- ของแข็งอาร์คิมีดีน ฉันมีจุดอ่อนสำหรับมุ้ง 3 มิติซึ่งเมื่อตัดออกและพับให้คุณสร้างรูปทรง 3 มิติจากกระดาษหรือการ์ด งานนั้นง่ายเขียนโปรแกรมที่สั้นที่สุดที่คุณสามารถวาดอวนสำหรับ 5 Platonic solids เอาต์พุตควรเป็นไฟล์รูปภาพในรูปแบบที่เหมาะสมกับการเลือกของคุณ (png, jpg เป็นต้น) ทั้งห้ารูปทรงจะมีคำอธิบายที่http://en.wikipedia.org/wiki/Platonic_solid อวนของพวกเขามีลักษณะเช่นนี้ (นำมาจากhttp://www.newscientist.com/gallery/unfolding-the-earth/2 ) อินพุต:จำนวนเต็มตั้งแต่ 1 ถึง 5 สมมติว่ารูปร่างมีหมายเลขตามลำดับของจำนวนด้านที่มี ดังนั้น 1 จะเป็นจัตุรมุขและ 5 ทรงกระบอก เอาท์พุท:ไฟล์ภาพที่มีตาข่ายสำหรับรูปร่างนั้น เพียงแค่โครงร่างรวมถึงเส้นภายในก็โอเค ไม่จำเป็นต้องเติมสีด้วย คุณสามารถใช้ภาษาการเขียนโปรแกรมใด ๆ ที่คุณชอบเช่นเดียวกับห้องสมุดใด ๆ ที่ไม่ได้ทำขึ้นเป็นพิเศษสำหรับการแข่งขันครั้งนี้ ทั้งสองควรพร้อมใช้งานได้อย่างอิสระ (ในความรู้สึกทั้งสอง) ออนไลน์ ฉันจะยอมรับคำตอบด้วยจำนวนตัวอักษรที่น้อยที่สุดในเวลาหนึ่งสัปดาห์ ผู้ชนะ มีผู้เข้าร่วมเพียงคนเดียว แต่ยอดเยี่ยมมาก ผู้ชนะคือ ... Raufio สำหรับชิ้นส่วนของรหัสกอล์ฟที่ฉันโปรดปราน

2
เล่นเกมที่สมบูรณ์แบบของ Mu Torere
พื้นหลัง Mu Torere เป็นเกมที่เป็นหนึ่งในสองเกมที่ชาวเมารีในนิวซีแลนด์เล่นกันก่อนที่จะมีอิทธิพลต่อชาวยุโรป สิ่งนี้ทำให้มันเป็นเกมที่ไม่เหมือนใครซึ่งมี "เกณฑ์การชนะอย่างมีวัตถุประสงค์" และกฎการเล่นที่แตกต่างจากเกมอื่น ๆ ที่มีอยู่ เกม: กระดานเป็นรูปแปดเหลี่ยม มีการเชื่อมต่อระหว่างจุดสุดยอดที่อยู่ติดกันแต่ละจุดและมีจุดศูนย์กลางที่เชื่อมต่อกับจุดยอดทั้งหมด ณ เวลาใดก็ตามแปดในเก้าโหนดจะถูกครอบครองโดยหิน ที่จุดเริ่มต้นมีหินสีขาวสี่ก้อนและหินสีดำสี่ก้อนที่แต่ละก้อนใช้เวลาครึ่งหนึ่งของแปดเหลี่ยมโดยที่โหนดกลางว่างเปล่า สีดำเคลื่อนที่ก่อน ในแต่ละเทิร์นผู้เล่นสามารถเคลื่อนหินหนึ่งอันของเขาไปตามหนึ่งใน 16 ขอบจากโหนดหนึ่งไปยังโหนดเปล่า หินสามารถเคลื่อนย้ายได้จากโหนดด้านนอกไปยังโหนดศูนย์กลางหากหินอยู่ติดกับหินของฝ่ายตรงข้าม ผู้เล่นเสียเมื่อเขาไม่สามารถเคลื่อนไหวได้อย่างถูกกฎหมายซึ่งเกิดขึ้นเมื่อไม่มีขอบเชื่อมต่อก้อนหินกับโหนดว่างเปล่า นี่คือเว็บไซต์ที่อธิบายกฎ (พร้อมแผนภาพ) และเสนอการวิเคราะห์ ความท้าทาย ความท้าทายของคุณคือการเขียนโปรแกรมที่สั้นที่สุดที่สามารถเล่นเกมที่สมบูรณ์แบบของ Mu Torere กับคู่ต่อสู้มนุษย์ โปรแกรมของคุณควรสามารถแสดงและอัปเดตกระดานเกมเคลื่อนไหวและรับการเคลื่อนไหวจากฝ่ายตรงข้ามที่เป็นมนุษย์ สิ่งสำคัญที่สุดคือควรเล่นเกมที่สมบูรณ์แบบ เกมที่สมบูรณ์แบบ? ใช่เกมที่สมบูรณ์แบบ ฉันได้ทำการวิเคราะห์เกมแล้วและฉันพบว่าเกมนี้ใช้เวลาไม่ จำกัด หากเล่นได้ทั้งสองด้านอย่างสมบูรณ์แบบ ซึ่งหมายความว่าโปรแกรมของคุณไม่ควรแพ้ นอกจากนี้โปรแกรมของคุณควรสามารถบังคับให้ชนะเมื่อใดก็ตามที่ฝ่ายตรงข้ามของมนุษย์ทำผิดพลาดซึ่งทำให้โปรแกรมสามารถบังคับให้ชนะ สำหรับวิธีที่โปรแกรมของคุณค้นพบการเคลื่อนไหวที่สมบูรณ์แบบนี้ขึ้นอยู่กับคุณ รายละเอียด หลังจากย้ายแต่ละครั้ง (และตอนเริ่มเกม) โปรแกรมของคุณควรพิมพ์กระดานเกม อย่างไรก็ตามคุณเลือกที่จะแสดงบอร์ดมันจะต้องแสดงโหนดทั้งหมดและเชื่อมต่ออย่างสมบูรณ์ (ทั้ง 16 สายการเชื่อมต่อควรถูกวาดโดยไม่มีเส้นไขว้) ในช่วงเริ่มต้นกระดานควรมีตำแหน่งเริ่มต้นที่ถูกต้อง วิธีหนึ่งในการทำให้สำเร็จคือการทำให้กระดานเกมเป็นสี่เหลี่ยม w-w-w …
14 code-golf  game 

9
เคล็ดลับในการเล่นกอล์ฟใน Postscript?
ในฐานะที่เป็นหนึ่งในภาษาที่ได้รับความนิยมน้อยมันเป็นเรื่องยากที่จะหาวรรณกรรมเกี่ยวกับกลุ่มแฮ็กเกอร์ที่มีคำลงท้าย ดังนั้นการค้นพบสิ่งที่นักกอล์ฟได้ทำที่นี่เพื่อใช้ประโยชน์จากแบบจำลองสแต็ก (หรือคุณสมบัติอื่น ๆ ) เพื่อเอาชนะความฟุ้งซ่านโดยธรรมชาติของ Postscript?
14 code-golf  tips 

17
ทดสอบว่าได้รับหมายเลขถ้าเป็นหมายเลขคี ธ
เนื่องจากตัวเลข Fibonacci และลำดับดูเหมือนว่าเรื่องที่นิยมสำหรับการเล่นกอล์ฟรหัสผมคิดว่ามันอาจจะเป็นความท้าทายที่สนุกกับการเล่นกอล์ฟรหัสที่มีตัวเลขคี ธ ดังนั้นฉันเสนอความท้าทายที่จะสร้างฟังก์ชั่นที่ใช้จำนวนเต็มและคืนค่าจริงหรือเท็จขึ้นอยู่กับจำนวนนั้นเป็นจำนวนคี ธ หรือไม่ เพิ่มเติมเกี่ยวกับตัวเลขของคี ธ ในคณิตศาสตร์เชิงนันทนาการหมายเลข Keith หรือหมายเลข repfigit (ย่อมาจากหลัก Fibonacci ซ้ำเหมือนเดิม) เป็นตัวเลขในลำดับจำนวนเต็มต่อไปนี้: 14, 19, 28, 47, 61, 75, 197, 742, 1104, 1537, 2208 2580, ... Numberphileมีวิดีโออธิบายวิธีการคำนวณหมายเลข Keith แต่โดยทั่วไปคุณจะใช้ตัวเลขของตัวเลข เพิ่มเข้าด้วยกันจากนั้นนำตัวเลขสุดท้ายของหมายเลขเดิมและเพิ่มลงในผลรวมของการคำนวณล้างและทำซ้ำ และตัวอย่างเพื่อให้ชัดเจน 14 1 + 4 = 5 4 + 5 = 9 5 + 9 = …
14 code-golf  math  number 

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