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

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

30
ตัวเลขหารด้วยตัวเลขแต่ละตัวหรือไม่
เพื่อนของฉันและฉันกำลังทำงานในห้องแล็บในวิชาวิทยาศาสตร์คอมพิวเตอร์ AP ของเราและตัดสินใจที่จะเขียนรหัสกอล์ฟปัญหาเนื่องจากเรายังมีครึ่งชั้นเรียนฟรีหลังจากเสร็จ นี่คือคำถาม: รับตัวเลข n, หารด้วยตัวเลขแต่ละตัวได้หรือไม่? ตัวอย่างเช่น 128 จะผ่านการทดสอบนี้มันหารด้วย 1,2 และ 8 ตัวเลขใด ๆ ที่มีศูนย์จะตัดสิทธิ์หมายเลขนั้นโดยอัตโนมัติ ในขณะที่คุณอาจใช้ภาษาอื่นและโพสต์โซลูชันด้วยหากต้องการเรามีความสนใจมากที่สุดในการเห็นว่าผู้ใช้งานขนาดเล็กสามารถสร้างโปรแกรมใน Java ได้อย่างไรเนื่องจากเป็นภาษาที่เราใช้ในชั้นเรียน จนถึงตอนนี้เราทั้งคู่มี 51 นี่คือรหัสปัจจุบันของฉัน: public boolean dividesSelf(int n){for(int p=n;n%10>0;)n/=p%(n%10)>0?.1:10;return n<1;} // 51 characters // Breakdown: // for(int p=n; Saves one semicolon to put declaration into for loop // n%10>0;) Basic check-for-zero // …
47 code-golf 

15
ตารางธาตุ - รหัสกอล์ฟ
ขึ้นอยู่กับการปฏิบัติกอล์ฟ - สหรัฐอเมริกา งานของคุณคือการหาตัวย่อ (สัญลักษณ์) ขององค์ประกอบที่กำหนดชื่อองค์ประกอบจนถึงและรวมถึง ununoctium (118) ใช้ตารางธาตุในวิกิพีเดีย ขอขอบคุณที่ ossifrage คลื่นไส้คุณสามารถหารายชื่อเต็มขององค์ประกอบตัวย่อที่http://pastebin.com/DNZMWmuf คุณไม่สามารถใช้ทรัพยากรภายนอก นอกจากนี้คุณไม่สามารถใช้ข้อมูลในตัวโดยเฉพาะเกี่ยวกับองค์ประกอบของตารางธาตุ ช่องโหว่มาตรฐานใช้ อินพุต อินพุตอาจมาจาก stdin ไฟล์promptและinputอื่น ๆ รูปแบบอินพุต: ทั้งหมดต่อไปนี้เป็นอินพุตที่ถูกต้อง: Carbon carbon CARBON cArBOn เป็นหลักชื่อองค์ประกอบ - กรณีตาย คุณไม่ต้องจัดการกับการสะกดผิดหรือชื่อองค์ประกอบที่ไม่ถูกต้อง อินพุตไม่ถูกต้องเป็นพฤติกรรมที่ไม่ได้กำหนด ผลผลิต : สัญลักษณ์สำหรับองค์ประกอบ อักขระตัวแรกจะต้องเป็นตัวพิมพ์ใหญ่และส่วนที่เหลือ จะต้องเป็นตัวพิมพ์เล็ก ตัวอย่างผลลัพธ์: C กรณีทดสอบ: Carbon -> C NiTROGen -> N Sodium -> Na Gold -> …

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

30
Pixel-art ตอนที่ 1: แสดง Super Mario
มันคือฉัน! ภารกิจของวันนี้เป็นเรื่องง่าย: เขียนโปรแกรมหรือฟังก์ชั่นที่แสดง Mario Sprite ขนาดเล็กที่ไม่ได้ใช้งานจาก Super Mario Bros บน NES บนพื้นหลังสีน้ำเงิน รายการประเภทใดก็ได้ที่ถูกต้องตราบเท่าที่มันแสดงขนาด 12 * 16 พิกเซลที่ใดก็ได้บนหน้าจอ / หน้าต่าง / เบราว์เซอร์ (แก้ไข: ภาพที่แสดงสามารถปรับขนาดได้หากภาษาของคุณไม่สามารถใช้งานภาพพิกเซลได้นอกจากนี้คุณยังสามารถส่งออกงานศิลปะ ASCII หรือศิลปะ HTML ได้ แต่ใช้สีที่เหมาะสม) ภาพ (ซูม 400%): คุณต้องใช้สีต่อไปนี้: สีน้ำเงิน: # 6B8CFF สีแดง: # B13425 เขียว / น้ำตาล: # 6A6B04 สีส้ม: # E39D25 โปรแกรมที่สั้นที่สุด (จำนวนตัวอักษร) ชนะ! มีช่องโหว่มาตรฐานใช้ …

30
แปลง 1, 2, 3, 4, 5, 6, 7, 8, และ 9 เป็น“ หนึ่ง”,“ สอง”,“ สาม” ฯลฯ
ผู้ชนะ: คำตอบทุบตีของ professorfish ! ทั้ง 9 ไบต์! ว้าว! คุณสามารถส่งคำตอบของคุณต่อไปได้ แต่คุณจะไม่สามารถชนะได้อีกต่อไป โพสต์ต้นฉบับเก็บไว้สำหรับลูกหลาน: เป้าหมายของคุณคือการแปลงจำนวนเต็มระหว่าง 1-9 เป็นคำที่แสดง คุณไม่จำเป็นต้องกังวลเรื่องทศนิยม ผู้ใช้จะป้อนหมายเลข สมมติว่าพวกเขาจะไม่ป้อนอะไร 10 หรือสูงกว่า ผู้ใช้ต้องพิมพ์ตัวเลขในบางจุดอย่างไรก็ตามวิธีการที่โปรแกรมอ่านไม่สำคัญ มันอาจจะเป็นกับ stdin อ่านไฟล์ข้อความ ฯลฯ อย่างไรก็ตามผู้ใช้จะต้องกดปุ่ม 9 บนแป้นพิมพ์ของพวกเขา (ตัวอย่าง) ในบางจุด ไม่คำนึงถึงขนาดตัวพิมพ์ (เช่น "หนึ่ง", "หนึ่ง", "oNe", "OnE" และอื่น ๆ ทั้งหมดเป็นที่ยอมรับได้) อนุญาตให้ใช้คำขอ HTTP / etc อย่างไรก็ตามโค้ดใด ๆ ที่ดำเนินการโดยเซิร์ฟเวอร์จะทำการนับจำนวนไบต์ของรหัสสุดท้ายของคุณ (เช่นถ้าฉันมีโปรแกรม C ++ ทำการร้องขอ HTTP, …

30
พิมพ์“ ทิศตะวันตกเฉียงเหนือทิศตะวันตกเฉียงเหนือทิศตะวันตกเฉียงเหนือ "
สิ่งนี้ดูเหมือนจะเล็กน้อย แต่เนื่องจากหลังจากความพยายามบางอย่างฉันจึงไม่สามารถเอาชนะวิธีแก้ปัญหาที่แท้จริงใน J ฉันคิดว่ามันอาจเป็นการท้าทายที่เหมาะสม (แม้ว่าจะชัดเจนแล้วนี่ไม่ใช่ความท้าทายเฉพาะสำหรับ J) ชื่อกล่าวมันทั้งหมด คุณเพียงแค่ต้องเขียนโปรแกรมหรือฟังก์ชั่น (ไม่มีข้อโต้แย้ง) ที่ส่งคืนหรือพิมพ์: N NE E SE S SW W NW คุณสามารถใช้การขึ้นบรรทัดใหม่แทนการเว้นวรรค ฟังก์ชั่นไม่มีข้อโต้แย้งส่งกลับอาร์เรย์ของสตริงเช่น ['N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'] ยังเป็นที่ยอมรับ ตัวอักษรอาจเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก แต่ไม่สามารถผสมกันได้

30
สร้างกริดสี RGB
นี้! เป็นตารางสี RGB ... โดยทั่วไปมันเป็นเมทริกซ์สองมิติที่: แถวแรกและคอลัมน์แรกเป็นสีแดง แถวที่สองและคอลัมน์ที่สองเป็นสีเขียว แถวที่สามและคอลัมน์ที่สามเป็นสีน้ำเงิน นี่คือสีที่อธิบายแบบกราฟิกโดยใช้ตัวอักษร R, G และ B นี่คือวิธีที่เราคำนวณสีของแต่ละพื้นที่บนตารางที่คำนวณ แดง + แดง = แดง (# FF0000) เขียว + เขียว = เขียว (# 00FF00) น้ำเงิน + น้ำเงิน = น้ำเงิน (# 0000FF) แดง + เขียว = เหลือง (# FFFF00) แดง + น้ำเงิน = ม่วง (# FF00FF) เขียว …

30
มาวาดระเบิด Atari ST กัน!
บทนำ Atari STเป็นคอมพิวเตอร์ส่วนบุคคลที่ได้รับความนิยมค่อนข้างตั้งแต่กลางเดือน 80 ถึงต้นยุค 90 ของพลังงานจากโมโตโรล่า 68000 ไมโครโปรเซสเซอร์ บนเครื่องนี้พฤติกรรมเริ่มต้นของระบบปฏิบัติการสำหรับข้อยกเว้นของ CPU ที่ไม่ถูกตรวจจับคือการแสดงแถวของระเบิดบนหน้าจอดังแสดงในภาพต่อไปนี้: ที่มา: https://commons.wikimedia.org/wiki/File:Row_of_bombs.png หมายเหตุ: กราฟิกระเบิดอาจแตกต่างกันเล็กน้อยขึ้นอยู่กับเวอร์ชั่นของระบบปฏิบัติการ แต่ลองดูอันนี้เป็นข้อมูลอ้างอิง จำนวนระเบิดขึ้นอยู่กับข้อยกเว้นเวกเตอร์วัตถุที่พบมากที่สุดคือ: ($ 008) ข้อผิดพลาดของบัส: 2 ระเบิด ($ 00c) ที่อยู่ผิดพลาด: 3 ครั้ง ($ 010) คำสั่งที่ผิดกฎหมาย: 4 ลูก เป้าหมาย เป้าหมายของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่พิมพ์หรือแสดงผล ASCII ของระเบิด Atari ST ดังกล่าว อินพุต จำนวนเต็มแทนจำนวนระเบิดที่จะแสดง รหัสของคุณจะต้องรองรับค่าที่พบบ่อยที่สุด: 2, 3 และ 4 การสนับสนุนการวางระเบิดน้อยลงและ / หรือมากกว่านั้นใช้ได้ …

12
กราฟิกอักษรเบรลล์
ตัดเมทริกซ์บูลใน 4x2 บล็อกและทำให้พวกเขาเป็นตัวอักษรเบรลล์...U+2800U+28FF [[0,1,0,0,1,0], [1,0,0,0,0,0], [1,0,0,0,1,0], [1,1,1,1,0,0]] ⣎⣀⠅ แผ่นที่มี 0-s หากขนาดไม่ได้เป็นทวีคูณของ 4 และ 2 [[0,1,0], [1,0,0], [1,1,1]] ⠮⠄ ใช้กฎการเล่นกอล์ฟตามปกติมีความยืดหยุ่นในรูปแบบอินพุต เอาต์พุตควรมีโครงสร้างของเมทริกซ์หรือดูเหมือนเมทริกซ์เช่นรายการสตริง สายเดียวกับการขึ้นบรรทัดใหม่ คำแนะนำ: chr(0x2800 + 128*b7 + 64*b6 + 32*b5 + 16*b4 + 8*b3 + 4*b2 + 2*b1 + b0)เป็นรูปแบบจุด b0 b3 b1 b4 b2 b5 b6 b7 ทดสอบที่ใหญ่กว่า: [[0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,1,1,1,0], [0,1,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,0,1,1,1,1,1], …

30
โอรีโอ? ไม่…อมยิ้มใช่มั้ย
ตั้งแต่ปี 2009 ชื่อรหัสเวอร์ชั่นของ Android นั้นมีรูปแบบของขนมหวาน Android 1.5 คือ Cupcake, Android 1.6 คือ Donut, Android 2.0 คือ Eclair และอื่น ๆ ในความเป็นจริงชื่อรุ่นจะเรียงตามตัวอักษร! C -> Cupcake D -> Donut E -> Eclair F -> Froyo G -> Gingerbread H -> Honeycomb I -> Ice Cream Sandwich J -> Jellybean K -> Kitkat L …
46 code-golf  string 

30
ใช่ แต่ไม่ใช่ แต่ใช่
เพื่อนร่วมงานของฉันเพิ่งส่ง JavaScript ชิ้นต่อไปนี้ให้ฉันเป็นเรื่องตลก: let butScript = (nrOfButs) => { for(var i = 0; i < nrOfButs; i++){ if(i % 3 == 0){ console.log("Yeah") } if(i % 2 == 0){ console.log("But") } if(i % 3 == 1){ console.log("No") } } } เนื่องจากรหัสถูกเขียนขึ้นในช่วงเวลาทำงานจึงเป็นทรัพยากรของ บริษัท ที่สูญเสียไปอย่างมาก เพื่อป้องกันไม่ให้เกิดเหตุการณ์ที่คล้ายกันขึ้นอีกในอนาคตเราต้องลดเวลาการทำงานให้น้อยที่สุด และเนื่องจากเป็นความรู้ทั่วไปว่าโปรแกรมที่สั้นกว่าเขียนได้เร็วกว่าเราจะต้องเขียนรหัสนี้ให้สั้นที่สุด! อินพุต เลขจำนวนเต็มที่ไม่เป็นลบเดี่ยว คุณต้องไม่จัดการกับอินพุตที่ผิดพลาด เอาท์พุต โปรแกรมของคุณจะต้องสร้างผลลัพธ์ที่เหมือนกับสคริปต์ด้านบน …
46 code-golf  string 

30
วาดธงสวิส
ภารกิจ:เอาต์พุตแฟล็ก Swiss สุขสันต์วันชาติสวิส / Schweizer Bundesfeiertag / Fête nationale สวิส / Festa nazionale svizzera / Fiasta naziunala svizra! รายละเอียด: ธงประกอบด้วย#FFFFFFกากบาทสีขาว ( ) บน#FF0000พื้นหลังสีแดง ( ) ไม้กางเขนประกอบด้วย 6x6 สี่เหลี่ยมจัตุรัสแขนขนาด 6x7 ติดกาวแต่ละข้าง กากบาทอยู่ในใจกลางของพื้นหลังสี่เหลี่ยมจัตุรัส 32x32 ซึ่งมีระยะทาง 6 หน่วยในแต่ละด้าน ( ที่มา ) ผู้เข้าร่วมสามารถเลือกขนาดผลงานได้ แต่ภาพจะต้องตรงกับสัดส่วนเหล่านี้อย่างแน่นอนซึ่งหมายความว่าขนาดของภาพนั้นต้องเท่ากับ 32 เวอร์ชันขั้นต่ำจะมีหน้าตาดังนี้:

25
รหัสสี Hex ที่ดีขึ้นสำหรับอินเทอร์เน็ตของคุณ
Hexts สามเท่าเช่น#ffffff(สีขาว) หรือ#3764ef(สีน้ำเงิน) มักใช้เพื่อแสดงสี RGB พวกเขาประกอบด้วย#ตามด้วยเลขฐานสิบหกหกหลัก (0-f) หรือบางครั้งตัวเลขสามหลักที่สีจริงจะได้รับโดยสองเท่าแต่ละหลัก ยกตัวอย่างเช่น#fffเป็น#ffffffและเป็น#1a8#11aa88 น่าเศร้าที่จดชวเลขสามหลักคือ golfiest อินเทอร์เน็ตมีการเสนอจนถึงขณะนี้ เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้สตริง 1 ถึง 7 ตัวอักษร: #ตัวอักษรตัวแรกจะเป็น ตัวละครอื่น ๆ 0123456789abcdefจะเป็นตัวเลขฐานสิบหก: อินพุตเป็นรูปแบบชวเลขของ hex triplet (หรือแบบเต็มหากกำหนดอักขระ 7 ตัว) คุณจำเป็นต้องแสดงเอาต์พุต triplet hex แบบเต็มที่ขยายชวเลขอินพุตโดยยึดตามรูปแบบเหล่านี้: Input -> Output # -> #000000 (black) #U -> #UUUUUU #UV -> #UVUVUV #UVW -> #UUVVWW (usual 3-digit shorthand) …

30
มันจะหยุดหรือไม่ (โจร)
นี่คือเธรดของโจร ด้ายตำรวจเป็นที่นี่ ความท้าทายของคุณคือการแตกการส่งของตำรวจโดยการค้นหาอินพุตที่ทำให้หยุด คุณไม่จำเป็นต้องค้นหาสาเหตุหรืออินพุตทั้งหมดที่ทำให้หยุดถ้ามีมากกว่าหนึ่งหรืออินพุตตำรวจตั้งใจเพียงหนึ่งอินพุตจะทำ เมื่อคุณทำการส่งแตกให้โพสต์ลิงค์ในความคิดเห็นหรือแก้ไขโพสต์ของตำรวจ คุณสามารถตั้งค่าสถานะการส่งของคุณสำหรับ mod เพื่อแก้ไขในโพสต์ของตำรวจ รวมทั้งโพสต์อินพุตที่ใช้และลิงก์ไปยังโพสต์ของตำรวจในคำตอบในกระทู้นี้ โจรที่ร้าวผู้ที่ส่งผลงานมากที่สุดชนะ หลายคนสามารถโพสต์รอยแตกไปที่การส่งตำรวจคนเดียวกันตราบใดที่พวกเขาแตกต่างกัน (หาก SE แปลงคำตอบที่ซ้ำกันของคุณเป็นความคิดเห็นคุณอาจต้องการลงคะแนนในคำขอคุณลักษณะนี้ ) กำลังมองหาการส่งที่ไม่ได้ติดตาม? fetch("https://api.stackexchange.com/2.2/questions/135363/answers?order=desc&sort=activity&site=codegolf&filter=!.Fjs-H6J36vlFcdkRGfButLhYEngU&key=kAc8QIHB*IqJDUFcjEF1KA((&pagesize=100").then(x=>x.json()).then(data=>{var res = data.items.filter(i=>!i.body_markdown.toLowerCase().includes("cracked")).map(x=>{const matched = /^ ?##? ?(?:(?:(?:\[|<a href ?= ?".*?">)([^\]]+)(?:\]|<\/a>)(?:[\(\[][a-z0-9/:\.]+[\]\)])?)|([^, ]+)).*[^\d](\d+) ?\[?(?:(?:byte|block|codel)s?)(?:\](?:\(.+\))?)? ?(?:\(?(?!no[nt][ -]competing)\)?)?/gim.exec(x.body_markdown);if(!matched){return;}return {link: x.link, lang: matched[1] || matched[2], owner: x.owner}}).filter(Boolean).forEach(ans=>{var tr = document.createElement("tr");var add = (lang, link)=>{var td = document.createElement("td");var …

30
เล่นกอล์ฟหมายเลขอดิศัย
คำนิยาม หมายเลขพีชคณิตคือจำนวนที่เป็นศูนย์ของพหุนามที่ไม่เป็นศูนย์ที่มีสัมประสิทธิ์จำนวนเต็ม ยกตัวอย่างเช่นรากที่สองของเป็นพีชคณิตเพราะมันเป็นศูนย์2x^2 - 2 จำนวนอดิศัยคือจำนวนจริงซึ่งไม่เกี่ยวกับพีชคณิต งาน คุณต้องเลือกหมายเลขอดิศัย จากนั้นเขียนโปรแกรม / ฟังก์ชั่นที่รับจำนวนเต็มบวกnและส่งออกตัวเลขทศนิยมที่n -th หลังจากจุดทศนิยมของตัวเลขยอดเยี่ยมที่คุณเลือก คุณต้องระบุอย่างชัดเจนในการส่งของคุณซึ่งจะใช้หมายเลขยอดเยี่ยม คุณสามารถใช้ดัชนี 0 หรือดัชนี 1 ดัชนี ตัวอย่าง e^2=7.389056098...เป็นจำนวนยอดเยี่ยม สำหรับหมายเลขนี้: n output 1 3 2 8 3 9 4 0 5 5 6 6 7 0 8 9 9 8 ... โปรดทราบว่าการเริ่มต้น7จะถูกละเว้น ดังที่ฉันได้กล่าวไว้ข้างต้นคุณสามารถเลือกหมายเลขยอดเยี่ยมอื่น ๆ เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ คะแนนต่ำสุดเป็นไบต์ชนะ
46 code-golf  math  number 

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