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

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

1
เขียน Censor D * mn ที่ไม่คลุมเครือ
การตรวจจับเป็นเครื่องมือทั่วไปที่ใช้กับ interwebs แต่พวกเขามักตรวจข่าวมากเกินไปและทำให้คำสาปแช่งคลุมเครือต่อผู้อ่าน และบางครั้งพวกเขาตรวจข่าวไม่เพียงพอดังนั้นคำเหล่านั้นจึงยังคงขุ่นเคือง งานของคุณคือแก้ไขมัน งานของคุณ เขียนโปรแกรม / ฟังก์ชั่น / อะไรก็ตามที่ใช้สองรายการและสตริง ["hello", "goodbye", "belgium", "offensive", "jumping", "hypercool"]รายการแรกจะเป็นในพจนานุกรมของทุกคำในภาษาของคุณเช่น: ต่อไปจะเป็นส่วนหนึ่งของรายการแรกที่มีทั้งหมดของความไม่พอใจ["belgium", "offensive"]คำในภาษา: คำในรายการเหล่านี้รับประกันว่าจะมีตัวอักษรตัวพิมพ์เล็กเท่านั้นของตัวอักษร สตริงเป็นวลีที่คุณจะต้องตรวจสอบ มันจะทำจากคำจากพจนานุกรมคั่นด้วยช่องว่าง:"Goodbye offensive belgium" ค่าส่งคืนจะถูกตรวจสอบวลีนั้น อย่างไรก็ตามคุณต้องเซ็นเซอร์ในวิธีที่แน่นอน โดยเฉพาะอย่างยิ่งสำหรับแต่ละคำในรายการที่ไม่เหมาะสมคุณต้องตรวจสอบตัวอักษรให้มากที่สุดเท่าที่จะเป็นไปได้ในขณะที่ยังคงชัดเจนในพจนานุกรมหลัก Goodbye o******** b******ดังนั้นที่นี่มันจะเป็น: ชี้แจง รหัสของคุณต้องตีความคำที่เป็นตัวพิมพ์ใหญ่ - เล็ก แต่กลับมาพร้อมกับการใช้อักษรตัวพิมพ์ใหญ่เริ่มต้น หากมีคำตอบที่ดีที่สุดหลายข้อให้เลือกข้อใดข้อหนึ่ง หากการเซ็นเซอร์ที่ไม่ชัดเจนนั้นเป็นไปไม่ได้ให้ตรวจสอบจดหมายฉบับเดียวที่มีการตีความที่เป็นไปได้น้อยที่สุด (หากเป็นไปได้หลายฉบับ กรณีทดสอบ ["hello", "goodbye", "belgium", "offensive", "jumping", "hypercool"] ["belgium", "offensive"] "Goodbye offensive belgium" …

3
เล่นกอล์ฟกับ Python Import
เมื่อใดจึงจะมีประโยชน์ในการใช้อินไลน์การใช้เพียงครั้งเดียวในการนำเข้าใน Python ตัวอย่างเช่น: __import__("x").doSomething() ด้านบนสั้นกว่าด้านล่างหรือไม่? import x x.doSomething() หรือ from x import* doSomething()
16 code-golf  tips  python 

5
Code Golf: การแยกผลลัพธ์ของ Google
เมื่อคุณค้นหาบางอย่างใน google ภายในหน้าผลลัพธ์ผู้ใช้สามารถเห็นลิงค์สีเขียวสำหรับหน้าแรกของผลการค้นหา ในรูปแบบที่สั้นที่สุดที่เป็นไปได้ไบต์ใช้ภาษาใด ๆ แสดงลิงค์เหล่านั้นไปยัง stdout ในรูปแบบของรายการ นี่คือตัวอย่างสำหรับผลลัพธ์แรกของแบบสอบถามการแลกเปลี่ยนสแต็ก: อินพุต: คุณเลือก: URL ( www.google.com/search?q=stackexchange&ie=utf-8&oe=utf-8) หรือเพียงแค่stackexchange ผลผลิต: french.stackexchange.com/, stackoverflow.com/, fr.wikipedia.org/wiki/Stack_Exchange_Network, en.wikipedia.org/wiki/Stack_Exchange,... กฎ: คุณอาจจะใช้ shorteners URL หรือเครื่องมือค้นหาอื่น ๆ / APIs ตราบใดที่ผลจะเป็นเช่นเดียวกับการค้นหาhttps://www.google.com ไม่เป็นไรหากโปรแกรมของคุณมีผลข้างเคียงเช่นการเปิดเว็บเบราว์เซอร์เพื่อให้สามารถอ่านหน้า Google html / js ที่เป็นความลับได้เมื่อมีการแสดงผล คุณสามารถใช้ปลั๊กอินของเบราว์เซอร์ userscripts ... หากคุณไม่สามารถใช้ stdout ให้พิมพ์ไปที่หน้าจอด้วยเช่น การแจ้งเตือนป๊อปอัพหรือจาวาสคริปต์! คุณไม่ต้องการสิ้นสุด / หรือ http เริ่มต้น: // คุณไม่ควรแสดงลิงค์อื่น ๆ …

16
รหัสฉันคุกกี้
ท้าทาย รหัสคุกกี้ ASCII ของชนิดตามอินพุต อินพุต ประเภทคุกกี้ นี่คือหนึ่งในสามสายอักขระ: "ธรรมดา", "ช็อคโกแลต" หรือ "ถั่ว" อาจเป็นอาร์กิวเมนต์ฟังก์ชัน, stdin (หรือเทียบเท่าที่ใกล้เคียงที่สุด) หรืออาร์กิวเมนต์ไฟล์ เอาท์พุต คุกกี้ ASCII ดูด้านล่าง จะต้องเป็น ___ / \ | | \___/ สำหรับอินพุตธรรมดา ___ /. .\ | . | \___/ สำหรับใส่ช็อคโกแลตและในที่สุด ___ /^ \ |^ ^| \___/ สำหรับอินพุตอ่อนนุช ข้อมูลอื่น ๆ นี่เป็นความท้าทายครั้งแรกของฉันมันง่ายอย่างที่สามารถเป็นได้ ข้อเสนอแนะที่สร้างสรรค์มีความชื่นชมอย่างมาก ใช้วิธีการใด ๆ ที่จะทำ ช่องว่างต่อท้ายได้ดี …

8
พิมพ์จัตุรัสที่เล็กที่สุดที่สมบูรณ์แบบ
Squaring the Squareเป็นกระบวนการของการปูกระเบื้องสี่เหลี่ยมโดยใช้สี่เหลี่ยมอื่น ๆ เท่านั้น ถ้าปูกระเบื้องนี้เพียงใช้สี่เหลี่ยมขนาดแตกต่างกันแล้วมันจะถือเป็นที่สมบูรณ์แบบ ที่สมบูรณ์แบบที่เป็นไปได้ที่เล็กที่สุดสี่เหลี่ยมตารางเป็นตารางที่ 112x112 กระเบื้องใช้ 21 สี่เหลี่ยมที่แตกต่างกัน ฉันได้สร้างเวอร์ชันศิลปะ ascii ของสี่เหลี่ยมด้านล่างนี้: ################################################################################################################ # ## ## # # ## ## # # ## ## # # ## ## # # ## ## # # ## ## # # ## ## # # ## ## # # ## ## …

2
XKCD: ความผิดปกติของ Keyboard Mash
XKCDอีกแรงบันดาลใจจากการแข่งขัน หนึ่งนี้จะขึ้นอยู่กับแป้นพิมพ์ Mash ได้รับสายป้อนระบุตัวอักษรที่ผิดปกติสมมติว่าส่วนใหญ่ได้รับการพิมพ์บนแถวเดียวของมาตรฐาน QWERTY แป้นพิมพ์ของสหรัฐอเมริกา สตริงอินพุตสามารถมีการกดแป้น Shifted แต่พวกเขาจะไม่ประกอบด้วยผลตอบแทนการขนส่ง (Enter), CTRL / ALT ตัวละครที่ได้รับผลกระทบช่องว่างแท็บและ backspaces (เพราะมันจะโง่) แป้นตัวเลขจะไม่ถือว่าเป็นส่วนหนึ่งของแป้นพิมพ์สำหรับความท้าทายนี้ ความท้าทายคือการส่งออกอักขระที่ไม่ได้อยู่ในแถวแป้นพิมพ์เดียวกันกับอักขระส่วนใหญ่ในสตริงเดียว เอาต์พุตควรมีอักขระผิดปกติแต่ละตัวเพียงครั้งเดียวและไม่มีอักขระอื่น ในกรณีที่มีการนับที่เท่ากันของอักขระที่ผิดปกติทั่วทั้งสองแถวขึ้นไปการแบ่งไทเบรกจะถูกกำหนดตามลำดับนี้: รายการที่ไม่ซ้ำกันสั้นที่สุด แถวบนสุด อินพุต สตริงผ่านทั้ง STDIN, ARGV หรือพารามิเตอร์ฟังก์ชัน เอาท์พุต สตริงถึง STDOUT หรือฟังก์ชันส่งคืน ควรมีอักขระผิดปกติแต่ละตัวเพียงครั้งเดียว แต่ไม่จำเป็นต้องสั่งซื้อ ตัวอย่าง อินพุต: FJAFJKLDSKF7KFDJ เอาต์พุต: 7 อินพุต: ASDF11111 เอาต์พุต: ASDF อินพุต: lkjrhsDdftkjhrksRjd เอาต์พุต: rtR อินพุต: } * 3% …
16 code-golf 

1
Chute-A-Pearing
ที่นี่ห้าภาพของลูกแพร์และเป็นเหล็ก ราง : A: B: C: D: E: นี่เป็นเพียงภาพขนาดย่อคลิกเพื่อดูขนาดเต็ม! (ฉันทำสิ่งเหล่านี้กับAlgodoo ) รูปภาพของคลาสนี้มีคุณสมบัติดังต่อไปนี้เสมอ: พวกเขามักจะ 400 × 400 พิกเซลพร้อมพื้นหลังสีขาว (อาจไม่ขาวอย่างแน่นอนเนื่องจากภาพ SE ถูกบีบอัดอย่างสูญเปล่า) พวกมันมีลูกแพร์เหมือนกัน 1 ถึง 4 ลูกโดยแต่ละลูกจะหมุนและวางในตำแหน่ง (เกือบ) แต่อย่างใด พวกเขามีรางเหล็กแนวตั้งหนึ่งที่ถึงด้านล่างของภาพ นอกเหนือจากด้านล่างของรางรางและกล่องขอบลูกแพร์ ( ตัวอย่างกล่องขอบ ) ไม่เคยสัมผัสหรือออกจากขอบเขตของภาพ กล่องกระโดดของลูกแพร์ไม่เคยทับซ้อนกันหรือไม่ทับทางราง ลูกแพร์อาจอยู่ภายใต้ส่วนของรางลาดในขณะที่B , CและD (ดังนั้นกล่องที่ จำกัด ของรางอาจทับกล่องของลูกแพร์) รางอาจมีตำแหน่งแนวนอนและแนวตั้งตราบใดที่มีที่ว่างเพียงพอสำหรับกล่องขอบของลูกแพร์ที่จะพอดีกับข้างบนมันอย่างอิสระ (จะไม่มีการทดสอบแบบ "พอดีกับแทบ") และมองเห็นส่วนของคอลัมน์ ท้าทาย เขียนโปรแกรมที่ใช้ภาพดังกล่าวและส่งออกภาพอีก 400 × 400 ภาพพร้อมรางในที่เดียวกัน …

30
การสั่ง Antiferromagnetic
Antiferromagnetismเป็นสิ่งที่นักวิจัยของ IBM เคยกระโดดจากดิสก์ 1 เทราไบต์ไปยังดิสก์100 เทราไบต์ในอะตอมจำนวนเท่ากัน ในวัสดุที่แสดงแม่เหล็กแม่เหล็ก, ช่วงเวลาแม่เหล็กของอะตอมหรือโมเลกุลมักเกี่ยวข้องกับการหมุนของอิเล็กตรอนจัดเรียงในรูปแบบปกติกับสปินที่อยู่ใกล้เคียง (ใน sublattices ต่าง ๆ ) ชี้ไปในทิศทางตรงกันข้าม งานของคุณคือการเขียนโปรแกรมที่ดึงลำดับของอะตอมแม่เหล็กไฟฟ้าเช่นภาพที่แสดงด้านบน คุณจะต้องสามารถมีคู่อย่างน้อยสี่ชุดแม้ว่าคุณอาจมีมากขึ้น แต่ละคู่จะต้องแสดงดังนี้แม้ว่าพวกเขาจะต้องเป็นลูกศรจริง : ขึ้นลง ลงมา ขึ้นลง เอาต์พุตของคุณสามารถอยู่ในรูป ASCII หรือกราฟิกเอาต์พุต คุณสามารถสร้างได้เฉพาะฟังก์ชั่นหรือโปรแกรมทั้งหมด แต่ต้องใช้อินพุตและวาดหลายคู่ ตัวอย่างที่มีคำเท่านั้น : อินพุต: 1 ขึ้นลง ลงมา ขึ้นลง อินพุต: 2 ขึ้นลง ลงขึ้นลง ขึ้นลง ลูกศรที่ยอมรับได้: ↑ และ ↓ ⇅ และ ⇵ /|\ และ \|/ โปรดใส่คำตอบของคุณในภาษารูปแบบX ไบต์เนื่องจากอ่านง่าย …

2
สมการของไม้ขีดไฟ
งานของคุณในความท้าทายนี้คือการวิเคราะห์ "สมการจับคู่" ที่กำหนดเช่นนี้ ... ... และเพื่อดูว่าสามารถเปลี่ยนเป็นสมการที่ถูกต้องได้หรือไม่โดยการจัดเรียงการแข่งขันใหม่ ถ้าเป็นเช่นนั้นคุณจะต้องแสดงจำนวนการเคลื่อนไหวน้อยที่สุดและสมการที่เกิดขึ้น อินพุต อินพุตเป็นสตริงที่สามารถอ่านได้จาก STDIN, ถ่ายเป็นอาร์กิวเมนต์ฟังก์ชันหรือแม้กระทั่งเก็บไว้ในไฟล์ มันเป็นสมการที่แสดงถึงการจัดเรียงไม้ขีดไฟและสามารถอธิบายได้โดยใช้ EBNF ต่อไปนี้: input = term, "=", term ; term = number | (term, ("+" | "-"), term) ; number = "0" | (numeralExceptZero , {numeral}) ; numeralExceptZero = "1" | "2" | "3" | "4" | "5" | …
16 code-golf 

7
ความน่าจะเป็นที่อัศวินเข้าพักบนกระดานหมากรุกคืออะไร?
กำหนดขนาดของกระดานหมากรุกและตำแหน่งเริ่มต้นของอัศวินคำนวณความน่าจะเป็นที่หลังจากการkย้ายอัศวินจะอยู่ในกระดานหมากรุก บันทึก: อัศวินทำให้การเคลื่อนไหวที่เป็นไปได้ทั้งหมด 8 อย่างด้วยความน่าจะเป็นที่เท่ากัน เมื่ออัศวินอยู่นอกกระดานหมากรุกมันจะไม่สามารถกลับมาข้างในได้ อินพุต อินพุตถูกคั่นด้วยเครื่องหมายจุลภาคในแบบฟอร์ม: l,k,x,y โดยที่lความยาวและความกว้างของกระดานหมากรุกkคือจำนวนของการเคลื่อนไหวที่อัศวินจะทำxคือตำแหน่ง x ของตำแหน่งเริ่มต้นของอัศวินและyเป็นตำแหน่ง y ของตำแหน่งเริ่มต้นของอัศวิน โปรดทราบว่า0,0เป็นมุมซ้ายล่างของกระดานและl-1,l-1เป็นมุมบนขวาของกระดาน ขั้นตอนวิธีการ: เริ่มต้นด้วยพิกัดเริ่มต้นของอัศวิน ทำการย้ายที่เป็นไปได้ทั้งหมดสำหรับตำแหน่งนี้และคูณการเคลื่อนไหวเหล่านี้ด้วยความน่าจะเป็นของพวกเขาสำหรับการย้ายแต่ละครั้งจะเรียกใช้ฟังก์ชันต่อไปเรื่อย ๆ จนกว่าจะถึงเงื่อนไขการยกเลิก เงื่อนไขการสิ้นสุดคือถ้าอัศวินอยู่นอกกระดานหมากรุกในกรณีนี้คืน 0 หรือจำนวนการเคลื่อนไหวที่ต้องการหมดลงในกรณีนี้คืน 1 ดังที่เราเห็นได้ว่าสถานะปัจจุบันของการเรียกซ้ำขึ้นอยู่กับพิกัดปัจจุบันและจำนวนขั้นตอนที่ทำได้เท่านั้น ดังนั้นเราสามารถจดจำข้อมูลนี้ในรูปแบบตาราง เครดิต ความท้าทายนี้มาจากการโพสต์บล็อกของcrazyforcode.comเผยแพร่ภายใต้ใบอนุญาตCC BY-NC-ND 2.5 IN มันได้รับการดัดแปลงเล็กน้อยเพื่อให้มีความท้าทายมากขึ้น
16 code-golf  chess 

19
จัดรูปแบบจำนวนไบต์ที่กำหนดเป็นรูปแบบที่มนุษย์สามารถอ่านได้
ความท้าทายและแหล่งกำเนิด ใน Stack Overflow คำถามยอดนิยมคือ: วิธีการแปลงขนาดไบต์เป็นรูปแบบที่มนุษย์อ่านได้ใน java? คำตอบที่โหวตมากที่สุดมีวิธีที่ดีมากในการทำสิ่งนี้ แต่นี่คือ codegolf และเราทำได้ดีกว่าใช่ไหม? ความท้าทายของคุณคือการเขียนวิธีการหรือโปรแกรมที่ครอบคลุมจำนวนไบต์ที่กำหนดให้กับรูปแบบที่มนุษย์สามารถอ่านได้ที่ถูกต้องและพิมพ์ผลลัพธ์ออกมาเป็นมาตรฐานของภาษาของคุณ * * ดูกฎสำหรับการชี้แจงเพิ่มเติม! อินพุต อินพุตจะเป็นจำนวนบวกเสมอโดยมีค่าสูงสุด (2 ^ 31) -1 เอาท์พุต คุณอาจเลือกหากคุณต้องการระบบนานาชาติของหน่วยหรือสัญกรณ์ไบนารี่เป็นผลลัพธ์ (สัญกรณ์ SI อาจช่วยคุณประหยัดได้ไม่กี่ไบต์) SI: B, kB, MB, GB Binary: B, KiB, MiB, GiB หมายเหตุ: หน่วยที่สูงกว่า GB หรือ GiB จะไม่สามารถตั้งค่าได้เนื่องจากช่วงอินพุตที่ถูก จำกัด ตัวอย่างผลลัพธ์ ระบบหน่วยสากล: Input Output 0 0.0 B …
16 code-golf 

6
ASCII Art of the Day # 3 - ศาลเจ้าจีน
ในตอนของ AAOD วันนี้เรากำลังจะสร้างศาลเจ้าจีนที่มีความสูงต่างกัน พิจารณาตัวอย่างต่อไปนี้สำหรับ height ( N) 1ถึง6 N = 1: . | . ]#[ . \_______/ . ]###[ . \__]#.-.#[__/ |___| |___| |___|_|___| ####/_\#### |___| /_____\ N = 2: . | . ]#[ . \_______/ . ]###[ . \___________/ . ]#####[ . \___]#.---.#[___/ |__|_| |_|__| |__|_|___|_|__| #####/___\##### |_____| /_______\ …

10
เลิกทำกราฟ
บทนำ ในความท้าทายนี้คุณจะได้รับกราฟกำกับด้วยการวนรอบตัวเองและงานของคุณคือการแปลงให้เป็นกราฟที่ไม่ได้เปลี่ยนทิศทางโดยไม่มีการวนรอบเอง อินพุต การป้อนข้อมูลของคุณเป็นกราฟกำกับโดยมีการตั้งค่าจุดยอด{0, 1, ..., n-1}สำหรับจำนวนธรรมชาติn ≥ 0(หรือ{1, 2, ..., n}ถ้าคุณใช้การจัดทำดัชนีแบบ 1) กราฟจะได้รับเป็น length- nรายการLที่เป็นรายการของออกจากเพื่อนบ้านของจุดสุดยอดL[i] iตัวอย่างเช่นรายการ[[0,1],[0],[1,0,3],[]]แสดงกราฟ .-. | v '-0<--2-->3 ^ | | | v | 1<--' โปรดทราบว่ารายชื่อเพื่อนบ้านไม่จำเป็นต้องสั่งซื้อ แต่รับประกันว่าจะไม่ซ้ำซ้อน เอาท์พุต เอาต์พุตของคุณเป็นกราฟอื่นในรูปแบบเดียวกับอินพุตที่ได้จากกราฟดังต่อไปนี้ ลบการวนซ้ำทั้งหมด สำหรับแต่ละขอบที่เหลือu -> vให้เพิ่มขอบที่กลับด้านv -> uถ้ายังไม่มีอยู่ เช่นเดียวกับอินพุตรายการเพื่อนบ้านของกราฟผลลัพธ์อาจไม่ได้เรียงลำดับ แต่พวกเขาไม่สามารถมีรายการซ้ำได้ สำหรับกราฟด้านบนเอาต์พุตที่ถูกต้องจะเป็น[[1,2],[0,2],[0,1,3],[2]]ซึ่งแทนกราฟ 0<->2<->3 ^ ^ | | v | 1<--' กฎระเบียบ …

4
สร้างนาฬิกา ASCII Fibonacci
มีคนสร้างนาฬิกาแฟนซีขึ้นมาจริงๆโดยใช้ตัวเลขฟีโบนักชีซึ่งดูดีมาก แต่ใช้ไม่ได้ ในแบบที่เราชอบ! มาสร้างใหม่กันเถอะ นาฬิกาประกอบด้วย 5 ส่วนที่สอดคล้องกับหมายเลข Fibonacci ห้าตัวแรกเริ่มต้นจาก 1 (เช่น 1, 1, 2, 3, 5): ccbeeeee ccaeeeee dddeeeee dddeeeee dddeeeee นาฬิกาสามารถแสดงเวลา 12 ชั่วโมงโดยเพิ่มทีละ 5 นาที นี่คือวิธีการทำงาน พิจารณาเวลา 7:20 7 ชั่วโมงสามารถแบ่งออกเป็นตัวเลขที่ได้รับ Fibonacci เป็น 7 = 2 + 5 นอกจากนี้ยังมี 4 หน่วยห้านาที 4 สามารถย่อยสลายได้เป็น 4 = 2 + 1 + 1 …

3
คุณเรียกว่ากึ่งกลางฉันเรียกมันว่า Code Golf
"ลองดูสิภาพที่จัดเรียงนั้นเหมือนของขวัญเล็กน้อยจากสวรรค์ยินดีต้อนรับ แต่ไม่คาดคิด" - Geobits มากกว่า 10,000 ชื่อเสียงให้กับใครก็ตามที่ชนะการท้าทายนี้ กฎ: 1) คุณต้องสร้างโปรแกรม 2) อินพุตจะเป็นรูปภาพอย่างไรก็ตามไม่ว่าจะผ่านเป็นไฟล์หรือรายการหมายเลขขึ้นอยู่กับคุณ 3) เอาท์พุทจะเป็นไฟล์ที่เมื่อเปิดในสี (หรือคล้ายกัน) จะแสดงภาพที่จัดตำแหน่ง 4) ขนาดผ้าใบจะอยู่ระหว่าง 100 x 100 และ 2000 x 2000 พิกเซล มันจะเป็นรูปสี่เหลี่ยมผืนผ้าเสมอ แต่ไม่ใช่รูปสี่เหลี่ยมเสมอ 5) ไม่มีการเข้ารหัสอย่างหนักของภาพหรือมายากล URL ที่ขี้ขลาด 6) ไม่มีไลบรารีภายนอกที่จะใช้ คู่มือการรวมศูนย์ (ตัวแปร Joshpbarron) รูปภาพจะถูกกำหนดให้อยู่กึ่งกลางถ้าสีขาวตัวที่ 1 (255,255,255,> 0 rgba) หรือโปร่งแสง (x, y, z, 0 rgba) บนแกนคือระยะทางที่เท่ากัน (บวกหรือลบ …

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