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

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

7
ฝนตกหรือไม่ ฉันไม่สามารถบอกได้
นี่คือเม็ดฝน: ! | . " : นี่คืออนุภาคเมฆ: ( ) _ @ $ & ฉันต้องการให้คุณยืนยันเมื่อได้รับบล็อกข้อความไม่ว่าฝนจะตกหรือไม่ ฝนกำลังตกถ้าทุกหยดฝนมีอนุภาคเมฆบางแห่งอยู่เหนือมัน จะต้องมีเมฆหนึ่งอนุภาคสำหรับน้ำฝนทุกครั้ง ส่งออกค่าจริงหรือเท็จแสดงถึงข้อสรุปของคุณ ตัวอย่างที่ถูกต้อง (@@@@@@) ( $ & ) Q ( ) .. . ! : . |" ! . ()()() ...... @_$ & errrr h_r-5 .:. . " ตัวอย่างไม่ถูกต้อง ! () $$$$$ ( ) ::::: …

8
มีทศนิยมอยู่กี่อันก่อนที่ฉันจะต้องบวก 1 เมื่อปัดเศษ?
เมื่อคุณปัดเศษตัวเลขถ้า>= 5คุณเพิ่มตัวเลขถัดไปตัวอย่างเช่น: 3.1415926535 rounded to 1dp is 3.1 3.1415926535 rounded to 4dp is 3.1416 <-- Note the 5 changed to 6 3.1415926535 rounded to 5dp is 3.14159 3.1415926535 rounded to 9dp is 3.141592654 <-- Note the 3 changed to 4 คุณท้าทายคือการได้รับจำนวนเต็มเป็น input และ output จำนวนตำแหน่งทศนิยมก่อนที่คุณจะต้องรอบรากที่สองของจำนวน - คือจำนวนตำแหน่งทศนิยมก่อนหลัก anumber ซึ่งเป็น>= 5ที่เกิดขึ้น …
10 code-golf  math 

4
ความไม่เท่าเทียมกันของการจัดเรียงใหม่
พื้นหลัง จัดแจงใหม่ความไม่เท่าเทียมกันเป็นความไม่เท่าเทียมกันที่ขึ้นอยู่กับตัวเลขการจัดเรียง หากฉันมีตัวเลขสองรายการที่มีความยาวเท่ากันคือ x 0 , x 1 , x 2 ... x n-1และ y 0 , y 1 , y 2 ... y n-1ของความยาวเดียวกันโดยที่ฉัน ฉันได้รับอนุญาตให้จัดเรียงตัวเลขในรายการอีกวิธีหนึ่งเพื่อเพิ่มผลรวม x 0 y 0 + x 1 y 1 + x 2 y 2 + ... + x n-1 y n-1คือเรียงลำดับ 2 รายการใน คำสั่งไม่ลด …

11
“ i” มี“ i” โอกาสที่จะเกิดขึ้น
ออกแบบตัวสร้างตัวเลขสุ่มโดยที่ตัวเลข i th นั้นมีโอกาส i% ที่จะเกิดขึ้นสำหรับ 0 <i <14. 0 ทั้งหมดควรมีโอกาสที่จะเกิดขึ้น 9% เมล็ดสำหรับเครื่องกำเนิดไฟฟ้าควรเป็นเวลาของระบบ คุณไม่สามารถใช้ฟังก์ชั่นที่กำหนดไว้ล่วงหน้าสำหรับการสร้างตัวเลขสุ่ม โดยทั่วไป 1 มีโอกาสเกิดขึ้น 1% 2 มีโอกาส 2% และสูงถึง 13 มีโอกาสเกิดขึ้น 13% นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ

4
จัดแนวข้อความให้เป็นบล็อก
งาน งานของคุณคือการเขียนโปรแกรมทั้งหมดซึ่งจะจัดแนวการป้อนข้อมูลที่กำหนดให้กับบล็อกของขนาดที่กำหนด การป้อนข้อมูล: 40 Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse …

5
ใช้ยูทิลิตี้ dog bash
dog เป็นอรรถประโยชน์บรรทัดคำสั่งที่ใช้ในจำนวนอาร์กิวเมนต์โดยพลการแรกคือข้อความที่จะเขียนและอื่น ๆ เป็นไฟล์จำนวนมากโดยพลการ dogยูทิลิตี้จะแบ่งข้อความในส่วนเท่ากันมากกว่าไฟล์เหล่านี้ หากมีเศษเหลือไฟล์nแรกnจะได้รับไบต์เพิ่มเติม dogอยู่ตรงข้ามของcatเช่นxนี้ทั้งหมดควรถือต่อไปนี้ $> dog x a.txt b.txt ... $> cat a.txt b.txt ... x$> โดยที่...บ่งชี้ว่ามีหลายไฟล์โดยพลการ ตัวอย่าง (12 ไบต์, 3 ไฟล์สามารถแบ่งเท่า ๆ กัน): $> ./dog.py "Dogs vs Cats" a.txt b.txt c.txt $> cat a.txt Dogs$> cat b.txt vs $> cat c.txt Cats$> cat a.txt b.txt c.txt …

5
Levenshtein ระยะทางอคติ
เขียนโปรแกรมในภาษาที่มีชื่อAว่าได้รับสตริงS, Bเอาท์พุทชื่อของการเขียนโปรแกรมภาษาที่แตกต่างกัน ความยาวของBจะต้องเท่ากับLevenshtein ระยะทาง (abbr. "เหอะ") ระหว่างและA SในการพิจารณาภาษาการเขียนโปรแกรมBต้องมีหน้า esolangs หรือหน้า Wikipedia ตัวอย่าง: (Suppose the program is coded in Python) Input: Jython Output: R Input: Pyt4oq Output: Go Input: Rs7hon Output: C++ LD ระหว่างPythonและJythonเป็นหนึ่งดังนั้นการส่งออกR คุณจะต้องครอบคลุมถึง LD 12ของขึ้นไป คุณสามารถสันนิษฐานได้ว่า LD ของ0จะไม่เกิดขึ้น นี่คือรหัสกอล์ฟดังนั้นโปรแกรมที่สั้นที่สุดในหน่วยไบต์ชนะ (นี่เป็นความท้าทายครั้งแรกของฉัน! คำติชมชื่นชม) ลีดเดอร์บอร์ด แสดงตัวอย่างรหัส var QUESTION_ID=58974,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function …
10 code-golf  string 

4
สร้างสี่เหลี่ยมผืนผ้าข้อความใหม่จากแถบเส้นทแยงมุม
ความท้าทายนี้ได้รับแรงบันดาลใจจากคำถาม SOเกี่ยวกับการสำรวจเมทริกซ์โดยการแจกแจงแถบเส้นทแยงมุมทั้งหมด แทนที่จะเป็นเมทริกซ์ให้พิจารณาบล็อกข้อความ: ABCD EFGH IJKL การข้ามเส้นทแยงมุม SW-NE ของบล็อกนี้จากซ้ายไปขวาเริ่มจากมุมบนซ้ายและสิ้นสุดที่มุมล่างขวาผลลัพธ์ในเอาต์พุตต่อไปนี้: A EB IFC JGD KH L ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ดำเนินการย้อนกลับของกระบวนการที่อธิบายไว้ข้างต้น นั่นคือชุดแถบเส้นทแยงมุม SW-NE ชุดเอาท์พุทบล็อกของข้อความที่ผลิตมัน อินพุตและเอาต์พุต ทั้งอินพุตและเอาต์พุตสามารถแสดงเป็นสตริงด้วยบรรทัดใหม่หรืออาร์เรย์ / รายการของสตริง ขึ้นบรรทัดใหม่ต่อท้ายเป็นตัวเลือก ข้อมูลที่ป้อนจะประกอบด้วยอักขระที่พิมพ์ได้อย่างน้อยหนึ่งตัวและสามารถสันนิษฐานได้ว่าถูกต้อง (จะไม่มีความยาวแถวที่ไม่สอดคล้องกัน) บล็อกผลลัพธ์จะมีจำนวนคอลัมน์มากกว่าหรือเท่ากับจำนวนแถวเสมอ กรณีทดสอบ การป้อนข้อมูล: A เอาท์พุท: A การป้อนข้อมูล: . LI PO. PV. CE G เอาท์พุท: .I.. LOVE PPCG การป้อนข้อมูล: M DA AIT LAR SGI …
10 code-golf 

1
ลงจุด tessellation เครื่องบินซึ่งเกินความจริง
สร้างพล็อต (ดิสก์ Poincare) ของ tessellation บนระนาบไฮเพอร์โบลิกเช่น: โปรแกรมใช้สี่อินพุต: 1) จำนวนขอบ / รูปหลายเหลี่ยม (สามในตัวอย่างนี้) 2) จุดตัดแต่ละจุดยอดแต่ละจุด (เจ็ดในตัวอย่างนี้) 3) ห่างจากจุดศูนย์กลางกึ่งกลางที่จะแสดง (5 ในตัวอย่างนี้ถ้าคุณดูอย่างใกล้ชิด) ซึ่งหมายความว่าจุดสุดยอดจะถูกรวมถ้ามันสามารถเข้าถึงได้ใน 5 ขั้นตอนหรือน้อยกว่ารูปแบบที่ศูนย์ ขอบมีการแสดงผลถ้ารวมทั้งจุดสุดยอดของพวกเขาจะรวม 4) ความละเอียดของภาพ (จำนวนพิกเซลเดียวคือภาพเป็นสี่เหลี่ยม) ผลลัพธ์จะต้องเป็นภาพ ขอบจะต้องแสดงผลเป็นวงกลมเส้นโค้งไม่ใช่เส้น (การฉายดิสก์Poincaréเปลี่ยนเส้นเป็นวงกลม) ไม่จำเป็นต้องแสดงคะแนน เมื่อผู้ใช้ใส่อะไรที่ไม่ใช่ไฮเพอร์โบลิก (เช่น 5 สามเหลี่ยมประชุมที่แต่ละจุดสุดยอด) โปรแกรมไม่ต้องทำงานอย่างถูกต้อง นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดชนะ

7
การเข้ารหัส Base85
ความท้าทาย เขียนโปรแกรมที่สามารถรับอินพุตของสตริงบรรทัดเดียวที่มีอักขระที่พิมพ์ได้ใด ๆ ของ ASCII และส่งออกสตริงเดียวกันที่เข้ารหัสในBase85 (โดยใช้การประชุมแบบ big-endian) คุณสามารถสันนิษฐานได้ว่าข้อมูลที่ป้อนจะมีค่า≤ 100 ตัวอักษรเสมอ คำแนะนำเกี่ยวกับ Base85 สี่ octets จะถูกเข้ารหัสเป็น (ปกติ) ห้าตัวอักษร Base85 อักขระ Base85 มีตั้งแต่!ถึงu(ASCII 33 - 117) และz(ASCII 122) ในการเข้ารหัสคุณดำเนินการหารอย่างต่อเนื่องโดย 85 ในสี่ octets (หมายเลข 32 บิต) และเพิ่ม 33 ไปยังส่วนที่เหลือ (หลังแต่ละส่วน) เพื่อรับอักขระ ASCII สำหรับค่าที่เข้ารหัส ตัวอย่างเช่นแอปพลิเคชันแรกของกระบวนการนี้สร้างอักขระที่ถูกต้องที่สุดในบล็อกที่เข้ารหัส ถ้าชุดของสี่ octets มีเพียงไบต์ null พวกเขาจะถูกเข้ารหัสเป็นแทนz!!!!! หากบล็อกสุดท้ายสั้นกว่าสี่อ็อกเท็ตมันจะเต็มไปด้วยไบต์ว่าง หลังจากการเข้ารหัสอักขระจำนวนเดียวกันที่ถูกเพิ่มเป็นช่องว่างภายในจะถูกลบออกจากจุดสิ้นสุดของเอาต์พุต ค่าการเข้ารหัสควรจะนำหน้าด้วยและตามมาด้วย<~~> …

1
การย่อให้สั้นเป็นจำนวนมาก
เมื่อจัดการกับตัวเลขที่ยาวเมื่อการเล่นโค้ดการลดความยาวของรหัสของคุณอาจเป็นเรื่องยากดังนั้นคุณมีเคล็ดลับในการทำให้ตัวเลขสั้นลงและจัดการได้ง่ายขึ้นหรือไม่ ตัวอย่างเช่นรหัส Pyth ต่อไปนี้จะพิมพ์ "Hello world" แต่ที่ 44 ไบต์นั้นไม่เป็นที่น่าพอใจ: Vcjkj85942000775441864767076 2 7=k+kCiN2)k แล้วฉันจะทำให้จำนวนที่สั้นลงสั้นลงได้85942000775441864767076อย่างไร?
10 code-golf  tips  pyth 

26
ตัวเลข N ใกล้เคียงกับการมีศูนย์สมดุล
วัตถุประสงค์ : ได้รับจำนวนเต็มบวกn: ถ้าnเป็นเลขคี่ให้แสดงรายการของnตัวเลขที่ใกล้เคียงกับ0ลำดับที่เพิ่มขึ้น ถ้าnเป็นเช่นนั้นให้ส่งออกค่า Falsey กรณีทดสอบ : 5 -> [-2,-1,0,1,2] 4 -> false (or any Falsey value) 1 -> [0] การดำเนินการอ้างอิง function update(){ var num = +document.getElementById("yield").value; if(num){ var out = document.getElementById("output"); if(num % 2 == 1){ // base is balanced var baseArr = []; for(var i=0;i<num;i++){ baseArr.push(i-Math.floor(num/2)); } …

4
ความสัมพันธ์ย้อนหลัง
เขียนโปรแกรมหรือฟังก์ชั่นที่ได้รับสตริง ASCII สองสายAและBจะสร้างสตริงA'และB'ตำแหน่งที่สตริงย่อยทั่วไปกลับด้าน กระบวนการในการค้นหาA'มีดังนี้: A' ตอนแรกว่างเปล่า ถ้าตัวอักษรตัวแรกของAที่อยู่ในBการค้นหาคำนำหน้ายาวที่สุดของซึ่งเป็นย่อยของA Bลบคำนำหน้านี้จากและเพิ่มการโอนกลับไปยังAA' มิฉะนั้นลบตัวอักษรตัวแรกนี้จากและเพิ่มเข้าไปAA' ทำซ้ำขั้นตอนที่ 2-3 จนกระทั่งAว่างเปล่า การค้นหาB'จะทำในทำนองเดียวกัน ตัวอย่าง ลองพิจารณาสตริงและA = "abc bab" B = "abdabc"สำหรับA'นี่คือสิ่งที่เกิดขึ้น: A = "abc bab": ตัวอักษรตัวแรก"a"ที่อยู่ในบีและคำนำหน้ายาวที่สุดของที่พบใน B "abc"คือ เราลบคำนำหน้านี้ออกจาก A และเพิ่มการกลับรายการ"cba"เป็น A ' A = " bab": อักขระตัวแรก" "ไม่ได้อยู่ใน B ดังนั้นเราจึงลบตัวละครนี้ออกจาก A และเพิ่มลงใน A ' A = "bab": ตัวอักษรตัวแรก"b"ที่อยู่ในบีและคำนำหน้ายาวที่สุดของที่พบใน B …
10 code-golf  string 

4
Avast พวกเจ้าทำการกวาดล้าง!
แบล็คเป็นโจรสลัดภาษาอังกฤษช่วงต้น 18 THศตวรรษ แม้ว่าเขาจะเป็นที่รู้จักในเรื่องการปล้นสะดมและยึดเรือเขาก็สั่งเรือของเขาโดยได้รับอนุญาตจากทีมงาน ไม่มีบัญชีของเขาที่เคยทำร้ายหรือฆ่าเชลยของเขา การท้าทายนี้มีขึ้นเพื่อระลึกถึงแบล็กเบียร์ดที่น่าอับอายและได้รับแรงบันดาลใจจากInternational Talk Like a Pirate Day (19 กันยายน) นอกจากนี้ยังเป็นผกผันของความท้าทายนี้โดยPyrrha ความท้าทาย สร้างโปรแกรมที่ใช้แผนที่ขุมทรัพย์เป็นอินพุต (ประกอบด้วยอักขระตามรายการด้านล่าง) และแสดงทิศทางของมัน อินพุต ปัจจัยการผลิตทั้งหมดจะประกอบด้วยv, >, <, ^, Xช่องว่างและเป็นหนึ่งเดียว คุณสามารถสมมติสิ่งต่อไปนี้: แผนที่จะไม่วนซ้ำหรือตัดกัน ลูกศรเริ่มต้นจะเป็นอักขระที่อยู่ล่างสุดในคอลัมน์ซ้ายสุดเสมอ จะมีสมบัติเสมอ ( X) ตัวอย่างอินพุตแสดงไว้ด้านล่าง >>v >>>>>>v ^ v ^ v ^ v ^ v<< ^ v ^ v ^ >>>>^ >>X ^ >>^ …
10 code-golf 

1
การประเมินการแสดงออกด้วยชวเลขที่เป็นตัวเลข
คุณทำงานให้กับ บริษัท ที่ต้องการที่จะทำให้เครื่องคิดเลขที่ใช้งานง่ายและทำให้คุณได้รับมอบหมายกับการเพิ่มความสามารถในการให้ผู้ใช้สามารถใช้ "shorthands ตัวเลข" ที่เป็นตัวอักษรที่แทนค่าตัวเลขเช่นสำหรับk 1000เนื่องจาก บริษัท ของคุณต้องการประหยัดเงินในการจัดเก็บในเครื่องคิดเลขดังกล่าวคุณต้องลดรหัสให้มากที่สุดเพื่อลดต้นทุนการจัดเก็บ งานของคุณ คุณต้องสร้างฟังก์ชั่นที่อ่านนิพจน์เป็นอินพุตจาก STDIN หรือใช้เป็นพารามิเตอร์และส่งคืนการประเมินหรือพิมพ์ไปที่ STDOUT ชี้แจงบางอย่าง ผมขอนิยามบางอย่าง ก่อนอื่นเรามีอินพุตซึ่งฉันเรียกว่านิพจน์ นี่อาจเป็นสิ่งต่อไปนี้: x + y / z ภายในการแสดงออกนี้เรามีสามตัวเลข: x, yและzแยกจากกันโดยผู้ประกอบการ ( +และ/) ตัวเลขเหล่านี้ไม่จำเป็นต้องเป็นจำนวนเต็มบวก (หรือจำนวนเต็มคู่) สิ่งที่ซับซ้อนคือเมื่อเราต้องประเมินชวเลขที่อยู่ในตัวเลข ตัวอย่างเช่นด้วย 2k15 สำหรับวัตถุประสงค์ของการประเมินผลเราแยกนี้ขึ้นเป็นสามหมายเลข: 2, 1000(ซึ่งเป็นk) 15และ จากนั้นตามกฎเรารวมเข้าด้วยกันเพื่อรับ 2*1000 + 15 = 2015 หวังว่านี่จะช่วยให้เข้าใจกฎต่อไปนี้ได้ง่ายขึ้น กฎระเบียบ หมายเหตุหากไม่ได้ระบุเป็นอย่างอื่นคุณสามารถแปลความหมายของคำว่า "ตัวเลข" หรือคำพ้องความหมายเพื่อรวมชวเลข ต่อไปนี้จะถือว่า shorthands …
10 code-golf 

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