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

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

30
แปลงชื่อส่วนหัว C เป็นชื่อส่วนหัว C ++
ในไลบรารีมาตรฐาน C ชื่อส่วนหัวลงท้ายด้วย.hคำต่อท้าย: stdio.h ใน C ++ ชื่อส่วนหัวเหล่านั้นจะมีอยู่ในรูปแบบอื่นโดยมีcคำนำหน้าแทน: cstdio เขียนฟังก์ชั่นที่แปลงรูปแบบแรกเป็นรูปแบบที่สอง คุณสามารถทำการแปลงในสถานที่หรือปล่อยให้สตริงเดิมไม่เปลี่ยนแปลงและส่งคืนสตริงใหม่ ไม่ว่าคุณจะรู้สึกเป็นธรรมชาติในภาษาที่คุณเลือก รหัสจะต้องรวบรวม / ตีความโดยไม่มีข้อผิดพลาด คำเตือนคอมไพเลอร์เป็นที่ยอมรับ นี่คือโซลูชัน C พื้นฐานของคุณ มันมี70 ตัวอักษรและสร้างคำเตือนเกี่ยวกับstrlen: void f(char*h){int i=strlen(h);h[--i]=0;while(--i)h[i]=h[i-1];*h='c';} ทางออกที่สั้นที่สุด (วัดเป็นจำนวนตัวอักษร) ชนะ อัปเดต:หากภาษาที่คุณเลือกไม่รองรับฟังก์ชั่นโปรแกรมทั้งหมดก็สามารถใช้ได้เช่นกัน อัปเดต:ตามที่ FUZxxl แนะนำนี่คือรายการที่สมบูรณ์ของไฟล์ส่วนหัวในไลบรารีมาตรฐาน C: assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h โดยเฉพาะไม่มีชื่อส่วนหัวที่มีจุดหลายจุด

18
เรียงลำดับ Hello World สั้นที่สุด
เขียนโปรแกรมที่ไม่มีการป้อนข้อมูลและพิมพ์Hello, World!ไปยัง stdout หรือภาษาอื่นที่ใกล้เคียงที่สุดของคุณ สิ่งที่จับได้คือแต่ละบรรทัดในโปรแกรมของคุณจะต้องมีอักขระ ASCII ที่พิมพ์ได้เท่านั้นและต้องเรียงตามลำดับคำโดยย่อ นี่คือทั้งหมด 95 ตัวอักษร ASCII ที่พิมพ์ได้ตามลำดับ: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ตัวอย่างเช่นบรรทัด!!A0~จะไม่ถูกต้องเพราะAและ0ไม่เรียบร้อย บรรทัด!!0A~จะถูกต้อง แต่ละบรรทัดในโปรแกรมของคุณอาจมีความยาวเท่าใดก็ได้และอาจมีจำนวนบรรทัดเท่าใดก็ได้ บรรทัดว่างถูกพิจารณาว่าเรียงลำดับแล้ว ขึ้นบรรทัดใหม่ในโปรแกรมของคุณจะต้องเหมือนกัน (ไม่มั่วสุม\nและ\r\n) ห้ามใช้แท็บและอักขระ ASCII ที่ไม่สามารถพิมพ์ได้อื่น ๆ เนื่องจากความต้องการที่นิยมสภาพชนะได้รับการเปลี่ยนรอบ: การยื่นด้วยน้อยที่สุดเส้นชัยชนะ Tiebreaker ไปที่โปรแกรมที่สั้นที่สุด (ขึ้นบรรทัดใหม่นับเป็นอักขระเดียว) เฉพาะHello, World!และขึ้นบรรทัดใหม่ต่อท้ายที่เป็นตัวเลือกเท่านั้นที่ควรเป็นเอาต์พุต โปรดทราบว่าHQ9 +hello, worldไม่ถูกต้องเพราะมันเอาท์พุท ฉันอาจห้ามภาษาที่คล้ายกับ HQ9 + ที่มีอักขระหนึ่งตัว "Hello, World!" คำสั่งเนื่องจากเรื่องไม่สำคัญของพวกเขา คำแนะนำ: นี่เป็นไปได้อย่างแน่นอนในUnaryและLenguageแม้ว่าจะไม่รัดกุมก็ตาม

1
ค้นหาจังหวะในไฟล์ MP3
ในความท้าทายนี้งานของคุณคือการบันทึกอย่างง่าย ๆ ในรูปแบบ mp3 และค้นหาการชดเชยเวลาของการเต้นในไฟล์ ตัวอย่างการบันทึกสองตัวอย่างอยู่ที่นี่: https://dl.dropboxusercontent.com/u/24197429/beats.mp3 https://dl.dropboxusercontent.com/u/24197429/beats2.mp3 นี่คือการบันทึกครั้งที่สามที่มีเสียงรบกวนมากกว่าสองครั้งก่อนหน้า: https://dl.dropboxusercontent.com/u/24197429/noisy-beats.mp3 ตัวอย่างเช่นการบันทึกครั้งแรกมีความยาว 65 วินาทีและมีการบันทึก (ยกเว้นว่าฉันผิด!) 76 ครั้ง งานของคุณคือการออกแบบโปรแกรมที่ใช้ไฟล์ mp3 เป็นอินพุทและเอาท์พุทตามลำดับของเวลาออฟเซ็ตในหน่วยมิลลิวินาทีของการเต้นในไฟล์ จังหวะถูกกำหนดให้เกิดขึ้นแน่นอนเมื่อมือกีต้าร์เล่น plucks หนึ่งหรือมากกว่าหนึ่งสาย โซลูชันของคุณต้อง: ทำงานกับไฟล์ mp3 ใด ๆ ที่มี "ความซับซ้อน" ที่คล้ายกัน มันสามารถล้มเหลวในการบันทึกที่มีเสียงดังหรือเล่นท่วงทำนองที่รวดเร็ว - ฉันไม่สนใจ มีความแม่นยำพอสมควร ความอดทนคือ +/- 50 ms ดังนั้นหากจังหวะการเต้นเกิดขึ้นที่ 1500 ms และวิธีการแก้ปัญหาของคุณรายงานที่ 1,400 นั่นเป็นสิ่งที่ยอมรับไม่ได้ ใช้ซอฟต์แวร์ฟรีเท่านั้น อนุญาตให้ใช้ ffmpeg ได้เช่นเดียวกับการใช้ซอฟต์แวร์ของบุคคลที่สามที่มีให้บริการฟรีสำหรับภาษาที่คุณเลือก เกณฑ์การชนะคือความสามารถในการตรวจจับการเต้นได้สำเร็จแม้จะมีเสียงดังในไฟล์ที่ให้ ในกรณีที่เสมอกันทางออกที่สั้นที่สุดจะชนะ …
27 code-golf  music 

17
จำลองกฎ 110
Rule 110 เป็นหุ่นยนต์เซลลูล่าร์ที่มีคุณสมบัติน่าสนใจ เป้าหมายของคุณคือการจำลองกฎ 110 ในตัวละครน้อยที่สุด สำหรับผู้ที่ไม่รู้กฎ 110 ถูกจำลองแบบทีละบรรทัดในกริด แต่ละตารางในบรรทัดของตารางจะมองไปที่ช่องสี่เหลี่ยมด้านบนด้านบนซ้ายและด้านบนขวาเพื่อกำหนดว่าควรจะใช้เซลล์ใด current pattern 111 110 101 100 011 010 001 000 new cell 0 1 1 0 1 1 1 0 อินพุต:ตัวเลขตั้งแต่ 0 ถึง 39 แสดงถึงแถวบนสุดของสี่เหลี่ยมจัตุรัสที่ n ในรูปแบบที่เหมาะสม (สตริงที่คั่นด้วยเครื่องหมายจุลภาค, รายการ, อาร์กิวเมนต์ของฟังก์ชัน) เพื่อรองรับภาษาที่มีการจัดทำดัชนี 1 หมายเลขอาจมีการจัดทำดัชนี 1 และช่วงจาก 1 ถึง 40 อินพุตตัวอย่าง: 38,39 …


15
จำนวนคำตอบและความคิดเห็น
เขียนซอฟต์แวร์ที่พิมพ์บน stdout จำนวนคำตอบและจำนวนความคิดเห็น (มองเห็นและยุบคำถามและคำตอบ) ของคำถาม / หน้านี้ สคริปต์ของคุณจะต้องทำงานโดยปิดหน้านี้เมื่อเริ่มต้น ผลลัพธ์ตัวอย่างที่คาดไว้: A12C40 ที่ A หมายถึงคำตอบและ C สำหรับความคิดเห็น
27 code-golf 

23
ฉันเดินไปรอบ ๆ แมนฮัตตันไกลจากโรงแรมของฉันมากแค่ไหน?
เรื่องราวที่ไม่จำเป็นและซับซ้อน ฉันกำลังเดินไปรอบ ๆแมนฮัตตันบล็อกโดยบล็อกและเท้าของฉันเหนื่อยและต้องการกลับบ้าน การจราจรค่อนข้างแย่ แต่โชคดีที่ฉันรวยมากและมีเฮลิคอปเตอร์รอรับสายที่โรงแรม แต่ฉันต้องการให้พวกเขารู้ว่าเชื้อเพลิงเท่าไหร่ที่จะบรรจุสำหรับเที่ยวบินและเพื่อที่พวกเขาจำเป็นต้องรู้ระยะทางโดยตรงจากโรงแรม ฉันจำได้ว่าช่วงไหนที่ฉันเดินและสามารถบอกเส้นทางที่ฉันไปได้ ระยะทางนี้ต้องแม่นยำแม้ว่าถ้าพวกมันสั้นเกินไปเราจะไม่ทำให้มันกลับมานานเกินไปและฉันก็ซื้อเชื้อเพลิงฉันไม่สามารถใช้ คุณสามารถเขียนโปรแกรมเพื่อแปลงให้เป็นระยะทางที่พวกเขาจะต้องเดินทางด้วยเที่ยวบินของพวกเขาเพื่อดึงฉันได้หรือไม่? รายละเอียด: เขียนฟังก์ชั่นที่: ยอมรับรายการหรือสตริงของบล็อกที่มีการเดินซึ่งสัมพันธ์กับกริดแบบกำหนดเอง: U p, Dของตัวเอง, L eft และR ight สามารถเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก - เช่น ถ้ามันสั้นกว่าที่จะใช้uแทนที่จะUไปข้างหน้า ทิศทางที่ไม่ถูกต้องมีพฤติกรรมที่ไม่ได้กำหนดเช่น ทิศทางของXอาจทำให้เกิดความล้มเหลว ส่งคืนทศนิยม / ทศนิยม / คู่ที่เป็นสองเท่าของระยะทางตรงจากจุดกำเนิด สำหรับภาพประกอบและความกระจ่าง: การเดินทางของฉันจะได้อย่างง่ายดายเพียงแค่ได้รับการบันทึกเป็น"luluu..."หรือ['l','u','l'...]แต่มันจะต้องถูกบันทึกเป็นขึ้น, ลง, ซ้าย, ขวา
27 code-golf 

30
แปลงสตริงของอักขระไบนารีให้เทียบเท่า ASCII
ใช้สตริงของอักขระไบนารีคั่นด้วยเว้นวรรคและแปลงเป็นสตริง ASCII ตัวอย่างเช่น... 1001000 1100101 1101100 1101100 1101111 100000 1010111 1101111 1110010 1101100 1100100 จะแปลงเป็น ... Hello World sสตริงไบนารีจะถูกเก็บไว้ในตัวแปรที่เรียกว่า นี่เป็นความท้าทายของนักกอล์ฟที่จะได้ทางออกที่สั้นที่สุด

15
Twinkle Twinkle Little Star
เขียนโปรแกรมเพื่อเล่นบทกวีภาษาอังกฤษยอดนิยม (ไฟล์นี้ได้รับอนุญาตภายใต้ Creative Commons Attribution-Share Alike 3.0 Unported License. คุณสมบัติ: Helix84ที่วิกิพีเดียภาษาอังกฤษ ; Blahedoที่วิกิพีเดียภาษาอังกฤษ ) บทความ Wikipedia บางบทความที่อาจมีประโยชน์: Twinkle Twinkle Little Star (มีคลิปเสียงของสิ่งที่โปรแกรมของคุณควรมีออกมา) สัญลักษณ์ดนตรีสมัยใหม่ (เพื่อเรียนรู้เกี่ยวกับสัญกรณ์ดนตรีที่ใช้ด้านบน) Note # Note frequency (เฮิร์ตซ์) (สูตรสำหรับคำนวณความถี่ของโน้ตแต่ละโน้ต) หลักเกณฑ์บางประการสำหรับการส่งของคุณ: โปรแกรมของคุณต้องใช้การ์ดเสียงของคอมพิวเตอร์ หากภาษาการเขียนโปรแกรมของคุณไม่มีการเข้าถึงฮาร์ดแวร์เสียงอย่างสะดวกโปรแกรมของคุณต้องสร้างไฟล์เอาต์พุตในรูปแบบมาตรฐานบางอย่างเช่น WAV หรือ MIDI โปรแกรมของคุณจะต้องสร้างผลลัพธ์ ตัวอย่างเช่นการฝังไฟล์ Ogg Vorbis จาก Wikipedia จะไม่ได้รับอนุญาต ต้องยอมรับคุณภาพเสียง อย่างน้อยที่สุดเพลงควรจะจดจำได้ง่าย ควรให้เสียงที่ดีเช่นกัน โฟกัสควรเป็นขนาดรหัสคุณภาพเสียงหรือทั้งสองอย่าง (อธิบายว่าข้อใดที่คุณตัดสินใจ) โซลูชั่นที่สง่างามก็ยอดเยี่ยมเช่นกัน มีความสุข! …
27 code-golf  music  audio 

19
แปลงเป็นและจากระบบตัวเลขแฟกทอเรียล
ระบบจำนวนปัจจัยที่เรียกว่า factoradic เป็นระบบเลข Radix ผสม แฟคทอเรียลกำหนดค่าสถานที่ของตัวเลข ในระบบนี้ตัวเลขที่ถูกต้องที่สุดอาจเป็น 0 หรือ 1 หลักขวาสุดที่สองสามารถเป็น 0, 1 หรือ 2 และอื่น ๆ ซึ่งหมายความว่าnตัวเลขตัวประกอบตัวเลขสามารถมีค่าสูงสุด(n + 1)!ได้ ตัวอย่างเช่นในการแปลงจำนวนตัวประกอบ24201ให้เป็นทศนิยมคุณต้องดำเนินการดังนี้ 2 * 5! = 240 4 * 4! = 96 2 * 3! = 12 0 * 2! = 0 1 * 1! = 1 240 + 96 + …

30
สร้างตัวอักษรที่มี 4 ตัวอักษรแต่ละตัว
โปรดทราบว่านี้ไม่ได้เช่นเดียวกับการพิมพ์ตัวอักษรสี่ครั้ง ภารกิจนี้คือการเขียนโปรแกรมเพื่อสร้างสำเนาของตัวอักษรภาษาอังกฤษสี่ตัวอักษรหนึ่งตัวต่อบรรทัดในเอาต์พุตมาตรฐาน: A A A A B B B B เป็นต้น ผลลัพธ์ควรมีบรรทัดใหม่หลังจากตัวอักษรแต่ละตัว ตัวอักษรตัวพิมพ์ใหญ่ที่ไม่ต้องการเอาต์พุตพิเศษ อย่างไรก็ตามตัวอักษรตัวพิมพ์เล็กและ / หรือช่องว่างเพิ่มเติมเป็นที่ยอมรับได้หากการใช้อักษรตัวใหญ่ / การปอกจะทำให้โซลูชันของคุณยาวขึ้น แก้ไขเพื่อเพิ่ม:การแก้ปัญหาจะต้องเสร็จสมบูรณ์เพียงพอที่จะดำเนินการ ฉันควรจะสามารถใช้ภาษาวางรหัสจากคำตอบและรับผลลัพธ์โดยไม่ต้องพิมพ์รหัสเพิ่มเติมใด ๆ คำถามข้างต้นเกี่ยวกับความครบถ้วนสมบูรณ์เกิดขึ้นในบริบทของโซลูชัน C แน่นอนว่าจะต้องมีกฎหรือระเบียบเกี่ยวกับเรื่องนี้ในเว็บไซต์เล่นกอล์ฟ? ถ้าเป็นเช่นนั้นฉันยินดีที่จะปฏิบัติตามแนวทางชุมชน แต่นี่คือของฉัน: สำหรับ C โดยเฉพาะคุณจะต้องรวม (และนับ) main(){... }รอบรหัสเนื่องจากจะไม่รวบรวมเป็นอย่างอื่น คำเตือนเพราะไม่มีอะไร#include <stdio.h>ดีตราบใดที่รหัสยังคงรวบรวม โดยทั่วไปแล้วภาษาที่คอมไพล์ต้องใช้หน่วยที่คอมไพล์ได้ นิพจน์เปลือยที่ให้ผลลัพธ์ที่ต้องการนั้นเป็นที่ยอมรับหากมีวิธีดำเนินการกับนิพจน์โดยตรง เช่นถ้าภาษามี REPL ดังนั้นคุณสามารถส่ง Haskell โดยไม่ต้องmain=ตราบเท่าที่มันใช้งานได้จริงตามที่เขียนไว้ในเช่นghciพรอมต์ แต่เนื่องจากนั่นหมายถึงการletประกาศของคุณมันอาจจะเป็นชัยชนะสุทธิที่ติดกับrunhaskellรูปแบบ ในทำนองเดียวกันawkสคริปต์ควรอยู่ในBEGIN(หรือENDด้วยการสันนิษฐานว่า stdin เชื่อมต่อกับ/dev/null) บล็อกเนื่องจากเราไม่ได้ประมวลผลอินพุตใด ๆ เป็นต้น

30
ผลรวมของจำนวนเฉพาะระหว่างช่วงที่กำหนด
เขียนรหัสที่สั้นที่สุดสำหรับการหาผลรวมของช่วงเวลาระหว่างaและb(รวม) อินพุต aและbสามารถนำมาจากบรรทัดคำสั่งหรือ stdin (ช่องว่างแยก) สมมติว่า1 <= a <= b <=10 8 ผลลัพธ์ เพียงพิมพ์ผลรวมด้วยอักขระบรรทัดใหม่ คะแนนโบนัส หากโปรแกรมยอมรับหลายช่วง (พิมพ์หนึ่งผลรวมในแต่ละบรรทัด) คุณจะได้รับคะแนนพิเศษ :)
27 code-golf  primes 

10
ไม่มีอะไรที่เหมือนกับเกมที่ดีของ ModTen
คำเตือน: ModTen เป็นเกมไพ่สวมซึ่งถูกสร้างขึ้นเพื่อวัตถุประสงค์เดียวของการท้าทายนี้ กฎของ ModTen ModTenเล่นด้วยสำรับไพ่มาตรฐาน 52 ใบ เนื่องจากกฎทั้งหมดยังไม่ถูกคิดค้นเราจะมุ่งเน้นไปที่การจัดอันดับมือโดยเฉพาะ มือที่ชนะใน ModTen กราฟิกจากวิกิพีเดีย ค่าบัตร บัตรมีค่าดังต่อไปนี้: 2ถึง9 : มูลค่าที่คุ้มค่าของพวกเขา สิบ : 0 จุด แจ็ค : 3 คะแนน ราชินีหรือราชา : 8 คะแนน Ace : 9 คะแนน คุณค่าของมือ ModTenมือทำจากไพ่สองใบ ค่าฐานของไพ่นั้นได้มาจากการคูณค่าของไพ่ทั้งคู่เข้าด้วยกันและรักษาตัวเลขสุดท้ายเท่านั้น (เช่นการใช้โมดูโล 10) ยกตัวอย่างเช่นค่าของ7 ♥ - Q ♣คือ " 666 " เพราะ( 7 × 8 …

30
สุ่มเลือกตัวละครแบบ plinko
มาดูกันว่าภาษาที่คุณเลือกนั้นดีแค่ไหนในการสุ่มเลือก ได้รับ 4 ตัวอักษรA, B, CและDหรือสตริงของ 4 ตัวอักษรABCD เป็น inputหนึ่งเอาท์พุทของตัวละครที่มีความน่าจะเป็นต่อไปนี้: A ควรมีโอกาสเลือก 1/8 (12.5%) B ควรมีโอกาส 3/8 (37.5%) ที่จะเลือก C ควรมีโอกาส 2/8 (25%) ที่จะเลือก D ควรมีโอกาส 2/8 (25%) ที่จะเลือก นี่สอดคล้องกับเค้าโครงเครื่องPlinkoต่อไปนี้: ^ ^ ^ ^ ^ ^ A B \ / ^ C D คำตอบของคุณจะต้องพยายามอย่างแท้จริงในการเคารพความน่าจะเป็นที่อธิบายไว้ คำอธิบายที่เหมาะสมของวิธีคำนวณความน่าจะเป็นในคำตอบของคุณ (และทำไมพวกเขาจึงเคารพรายละเอียดโดยไม่คำนึงถึงปัญหาการสุ่มหลอกและปัญหาจำนวนมาก) ก็เพียงพอแล้ว เกณฑ์การให้คะแนน นี่คือโค้ดกอล์ฟที่มีจำนวนน้อยที่สุดในแต่ละภาษาที่ชนะ!

22
ก่อสร้างตามธรรมชาติ
ตัวเลขธรรมชาติรวมถึง 0 ถูกกำหนดอย่างเป็นทางการเป็นชุดด้วยวิธีดังต่อไปนี้ : หมายเลข 0 ถูกกำหนดเป็นชุดว่าง {} สำหรับn ≥ 0 ตัวเลขn +1 หมายถึงn ∪ { n } ดังนั้นn = {0, 1, ... , n -1} หมายเลขแรกที่กำหนดโดยโพรซีเดอร์นี้คือ: 0 = {} 1 = {{}} 2 = {{}, {{}}} 3 = {{}, {{}}, {{}, {{}}}} ท้าทาย กำหนดnเอาท์พุทการเป็นตัวแทนของมันเป็นชุด กฎระเบียบ การส่งออกอย่างต่อเนื่องสามารถใช้ยึดตัวละครเช่น{}, [], หรือ() ไม่อนุญาตให้ใช้<>ตัวอักษร …

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