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

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

26
แปลงสตริง n ความยาว m เป็นสตริง m ยาว n
เขียนโปรแกรมที่กำหนดจำนวน 'n' ของสตริงที่มีความยาว 'm' ส่งคืนจำนวน 'm' ของสตริง 'n'-length ด้วยเงื่อนไขนี้: ทุกสายใหม่ควรมีตัวอักษรที่ดัชนีเดียวกันของสายอื่น ๆ ตัวอย่างเช่นสตริงขาออกแรกต้องมีตัวอักษรตัวแรกของสตริงอินพุตทั้งหมดสตริงเอาต์พุตที่สองต้องมีตัวอักษรตัวที่สองของสตริงอินพุตทั้งหมดและอื่น ๆ ตัวอย่าง (ตัวเลขใต้ตัวอักษรเป็นดัชนีของสตริง): input: "car", "dog", "man", "yay" 012 012 012 012 output: "cdmy", "aoaa", "rgny" 0000 1111 2222 input: "money", "taken", "trust" 01234 01234 01234 output: "mtt", "oar", "nku", "ees", "ynt" 000 111 222 333 444 สมมติว่าอินพุตถูกต้องทุกครั้ง …
16 code-golf  string 

5
ทิ้งข้อความไว้
งาน: ทำโปรแกรมที่แสดงความคิดเห็นในคำถามนี้ 1234567890123456เนื้อหาที่ควรจะ การแก้ไข: คุณสามารถออกจากชื่อผู้ใช้และรหัสผ่านของคุณเป็นUและPถ้าคุณใช้ชื่อผู้ใช้และรหัสผ่าน (ถ้ามี) ไม่มีตัวย่อ URL (ถ้ามี) คุณไม่สามารถใช้คอนโซลเบราว์เซอร์

8
ลูกบอล ASCII ที่ตกลงมา
อินพุต คุณจะได้รับแผนที่ 2D พร้อมลูกบอลและพื้นดิน ดูเหมือนว่านี้: 1 5 2 3 4 __________________________ แต่ละหมายเลขคือลูกบอลและ_ระดับพื้นดิน ห้ามใช้_อักขระขีดล่างในบรรทัดอื่นที่ไม่ใช่บรรทัดระดับพื้นดิน มีช่องว่างบรรทัดใหม่และตัวเลขที่0-9อนุญาตเหนือระดับพื้นดิน คุณไม่สามารถสรุปได้ว่าบรรทัดสุดท้ายคือระดับพื้นดิน - อนุญาตให้มีบรรทัดว่างด้านล่างระดับพื้นดิน คุณยังสามารถเพิ่มช่องว่างเพื่อเติมบรรทัดว่างถ้าสิ่งนั้นช่วยคุณได้ ลูกบอลสามารถมีตัวเลขจาก0ถึง9สามารถวางเหนือกัน แต่ไม่สามารถอยู่ใต้พื้นดินได้ หมายเลขของลูกบอลจะไม่ซ้ำกัน สมมติว่าตัวละครแต่ละตัวเป็นหนึ่งเมตร รับแผนที่จาก pastebin! กรณีทดสอบ 1 - ควรบางสิ่งบางอย่างที่ส่งออกเช่นนี้ กรณีทดสอบ 2 - ควรผลิตผลเช่นเดียวกับแผนที่แรก ท้าทาย ความท้าทายของคุณคือการอ่านแผนที่แบบนั้นจากไฟล์หรือจากstdin- คุณได้รับอนุญาตให้ใช้cat balls.txt | ./yourexecutable- และความเร็วการส่งออกของลูกบอลแต่ละลูกเมื่อกระทบกับพื้น นี่คือสูตรสำหรับความเร็ว: สมมติว่าhเป็นความแตกต่างระหว่างหมายเลขบรรทัดหมายเลขบรรทัดพื้นดินและหมายเลขบรรทัดลูกและที่เท่าเทียมกันg10m/s^2 เอาท์พุต คุณควรส่งออกลูกบอลแต่ละหมายเลขและความเร็วในm/sระดับพื้นดิน ตัวอย่างเช่นN - Vm/sที่ไหนNคือหมายเลขบอลและVความเร็วของมัน คุณยังสามารถส่งออกอาร์เรย์ถ้าคุณต้องการ การเข้ารหัสที่มีความสุข! :)

9
การตรวจสอบสัญญาณเมทริกซ์สำรอง
เมทริกซ์สลับสัญญาณเป็นnโดยnเมทริกซ์ที่ประกอบด้วยตัวเลข -1, 0, 1, ดังกล่าวว่า: ผลรวมของแต่ละแถวและคอลัมน์คือ 1 รายการที่ไม่ใช่ศูนย์ในแต่ละแถวและคอลัมน์สลับกันลงชื่อเข้าใช้ เมทริกซ์เหล่านี้พูดคุยเรื่องเมทริกซ์การเปลี่ยนรูปแบบและจำนวนเมทริกซ์เช่นnนี้สำหรับดอกเบี้ยที่ได้รับในบางครั้ง พวกมันเกิดขึ้นเองตามธรรมชาติในระหว่างวิธีการควบแน่นของ Dodgson ของเมทริกซ์ดีเทอร์มิแนนต์ปัจจัย นี่คือตัวอย่างบางส่วนของเมทริกซ์สัญญาณ 4 คูณ 4: 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 -1 1 1 0 -1 1 1 0 …

12
ภาษา Geobitsian
ภาษา Geobitsianเป็นใหม่ที่บิดเบือนภาษาอังกฤษซึ่งคำแตกออกเป็นส่วน ๆ ซึ่งแต่ละส่วนจะต้องเริ่มต้นด้วยตัวอักษรที่แตกต่างกัน จากนั้นทุกครั้งที่ตัวอักษรเริ่มต้นตัวใดตัวหนึ่งปรากฏในสตริงอื่นตัวอักษรนั้นจะถูกแทนที่ด้วยส่วนที่สอดคล้องกันทั้งหมดของมัน กระบวนการนี้เรียกว่าGeobitsizing ตัวอย่างเช่นคำว่า " Geobits " อาจแบ่งออกเป็นgeo bitsและบทกวีไร้สาระ Algy met a Bear A Bear met Algy The Bear was bulgy The bulge was Algy จะถูก Geobitsized ด้วย Algeoy met a Bitsear A Bitsear met Algeoy The Bitsear was bitsulgeoy The bitsulgeoe was Algeoy เพราะทุกgกลายเป็นgeoทุกคนG(แม้จะมีผู้ใด) จะกลายเป็นGeoทุกคนbจะกลายเป็นbitsและทุกกลายเป็นBBits โปรดทราบว่าการทดแทนแต่ละครั้งจะดำเนินการตามสตริงเดิมไม่ใช่ขั้นตอนกลางใด …
16 code-golf  string 

7
ส่งสายจักรวาล
โทรจักรวาลเป็นข้อความที่ส่งเข้ามาในพื้นที่ในปี 1999 และปี 2003 มันทำจาก 23 127 * 127px ภาพขาวดำบิตแมปที่ระบุรายละเอียดที่นี่ ภารกิจของคุณคือการเขียนโปรแกรมที่แสดงข้อความ 127 * 2921px ทั้งหมดไม่ว่าจะเป็นข้อความ (ทำจากศูนย์ศูนย์และตัวแบ่งบรรทัด) หรือเป็นรูปภาพ (วาดบนหน้าจอหรือบันทึกไว้ในดิสก์) จะมีผู้ชนะสองประเภท: หนึ่งประเภทสำหรับข้อความและอีกหนึ่งประเภทสำหรับรูปภาพ เทคนิคทั้งหมดได้รับอนุญาตยกเว้นช่องโหว่ทั่วไป อนุญาตให้ส่งออก 23 หน้าแยกกัน อนุญาตให้เขียนโปรแกรมได้สูงสุด 23 โปรแกรม (เช่นเดียวสำหรับแต่ละหน้า) และรวมขนาดเพื่อกำหนดคะแนนของคุณ ได้รับอนุญาตให้ใช้ไฟล์ไบนารีได้สูงสุด 23 ไฟล์ข้างๆโปรแกรมของคุณ น้ำหนักของพวกเขาจะถูกนับในคะแนนของคุณ รหัสที่สั้นที่สุด (เป็นไบต์) ชนะ ที่ 1 บิตต่อพิกเซลภาพประกอบด้วย 127 * 127 * 23/8 = 46370 ไบต์ + 7 บิตของข้อมูล …

18
ตัวส่วนของชุดฮาร์มอนิก
ก่อนหน้านี้เราได้pseudofactorialของตัวเลขซึ่งเป็น LCM ของตัวเลขจากไป1n มันจะมีประโยชน์ในการเพิ่มเศษส่วนเข้าด้วยกัน อย่างไรก็ตามเราพบว่าส่วนของการ1/1 + 1/2 + 1/3 + 1/4 + 1/5 + 1/6เป็น20แทน pseudofactorial ของซึ่งเป็น660 งานของคุณคือการหาตัวหารของจำนวนเต็มบวกให้1/1 + 1/2 + ... + 1/nn Testcases n result 1 1 2 2 3 6 4 12 5 60 6 20 7 140 8 280 9 2520 10 2520 11 27720 12 …

10
แจมไม่ได้เพิ่มเช่นนั้น
พื้นหลัง อะตอมเลขคณิตของเยลลี่เวกเตอร์อัตโนมัติ ในความเป็นจริงแล้วx + yนั้นถูกนิยามไว้อย่างดีเมื่อใดก็ตามที่xและyเป็นตัวเลขหรืออาเรย์ของตัวเลข ซอร์สโค้ดของเยลลี่นำพฤติกรรมนี้ไปใช้โดยใช้ vectorizer ทั่วไป แต่สำหรับความท้าทายนี้เราจะพิจารณาเฉพาะการเพิ่มจำนวนเต็มและอาร์เรย์จำนวนเต็มแบบซ้อน คำนิยาม กำหนดความลึกของxเป็น0ถ้าxเป็นจำนวนเต็มเป็น1ถ้ามันเป็น (อาจจะเป็นที่ว่างเปล่า) อาร์เรย์แบนของจำนวนเต็มและเป็น1 + nถ้ามีอย่างน้อยหนึ่งองค์ประกอบของความลึกnและองค์ประกอบของความลึกไม่มีk> n . วิธีนี้1มีความลึก0 , []และ[1]และ[1, 1]มีความลึก1 , [[], []]และ[[1], [1]]และ[1]และ[1] , []]มีความลึก2 , [1, [1, [1]]]มีความลึก3 , ฯลฯ การดำเนินการx + yถูกกำหนดไว้ดังนี้ หากxและyมีความลึก0ให้ส่งคืนผลรวมของพวกเขา ถ้าxและy ที่มีระดับความลึกเท่ากัน แต่บวกซ้ำใช้+รายการทั้งหมดของxและรายการที่สอดคล้องกันของปี หากxและyมีความยาวต่างกันให้ผนวกท้ายของอาร์เรย์ที่ยาวกว่าเข้ากับอาร์เรย์ของผลรวม ส่งคืนผลลัพธ์ หากความลึกของxน้อยกว่าความลึกของ yอย่างเคร่งครัดให้ใช้+กับxและรายการทั้งหมดของyซ้ำแล้วคืนค่าผลลัพธ์ ทำตรงข้ามถ้าY 's ลึกเป็นอย่างเคร่งครัดมีขนาดเล็กกว่าx ' s ตัวอย่างเช่นพิจารณาดำเนินการ[1, …

1
แปลงรูปวาดกล่อง ASCII เป็น Unicode
ฉันลงคอขอสิ่งที่ฉันจะพบว่ามีประโยชน์ ภารกิจคือการวาดกล่อง ASCII ตามอำเภอใจเช่นนี้ | +----+----+ | state A +---+ +---------+ | | +----v----+ | state B | +---------+ ... และแปลงให้เป็นสิ่งที่สวยงามยิ่งขึ้นโดยใช้อักขระการวาดกล่องยูนิโค้ดเช่น │ ╭────┴────╮ │ state A ├───╮ ╰─────────╯ │ │ ╭────v────╮ │ state B │ ╰─────────╯ รายละเอียดเพิ่มเติม: แปลงเฉพาะ + - | อักขระ - อักขระอื่นควรไม่เปลี่ยนแปลง ใช้ กล่อง DRAWINGS แนวตั้งแสง (U + …

4
วิธีที่ถูกต้องในการเพิ่มตัวเลขเพื่อรับ 8 จำนวนมาก
ได้รับแรงบันดาลใจจากคำถามนี้ซึ่งได้รับแรงบันดาลใจเพิ่มเติมจากข้อนี้เขียนโปรแกรมที่ใช้จำนวนเต็มสองจำนวนและเพิ่มพวกมันในแบบที่ไม่เหมือนใคร สำหรับการอ้างอิงตัวเลขจะถูกแสดงด้วยวิธีต่อไปนี้: _ _ _ _ _ _ _ _ | | | _| _| |_| |_ |_ | |_| |_| |_| | |_ _| | _| |_| | |_| _| โปรดทราบว่า 1 ใช้ทั้งสองส่วนทางด้านขวาไม่ใช่ด้านซ้าย มีอักขระพิเศษสองตัวที่สามารถสร้างได้ด้วยวิธีนี้ซึ่งไม่ใช่ตัวเลข ดูตารางเพิ่มเติมด้านล่าง: | 0 1 2 3 4 5 6 7 8 9 --+-------------------- 0 | …

15
ค้นหาพลังที่สมบูรณ์แบบ n-th!
อำนาจที่สมบูรณ์แบบเป็นจำนวนของรูปแบบa**bที่และa>0b>1 ยกตัวอย่างเช่นเป็นพลังงานที่สมบูรณ์แบบเพราะมันสามารถแสดงเป็น1255**3 เป้าหมาย งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่พบว่าnพลังงานที่สมบูรณ์แบบ -th nให้เป็นจำนวนเต็มบวก รายละเอียด พลังที่สมบูรณ์แบบครั้งแรกคือ1(ซึ่งก็คือ1**2) อินพุต / เอาต์พุตในรูปแบบที่เหมาะสม Built-in จะได้รับอนุญาต ข้อมูลเพิ่มเติม OEIS A001597 เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ ทางออกที่สั้นที่สุดในหน่วยไบต์ชนะ Testcases input output 1 1 2 4 3 8 4 9 5 16 6 25 7 27 8 32 9 36 10 49

10
อ่าน n สุ่มบรรทัดจากไฟล์ขนาดใหญ่ที่อาจเกิดขึ้น
ความท้าทายนี้เกี่ยวกับการอ่านบรรทัดสุ่มจากไฟล์ขนาดใหญ่ที่อาจเกิดขึ้นโดยไม่ต้องอ่านไฟล์ทั้งหมดลงในหน่วยความจำ อินพุต จำนวนเต็มnและชื่อของไฟล์ข้อความ เอาท์พุต n บรรทัดของไฟล์ข้อความที่เลือกอย่างสุ่มโดยไม่ต้องเปลี่ยน คุณสามารถสันนิษฐานได้ว่าnอยู่ในช่วง 1 ถึงจำนวนบรรทัดในไฟล์ ระวังเมื่อสุ่มตัวอย่างnตัวเลขโดยการสุ่มจากช่วงที่คำตอบที่คุณได้รับนั้นเหมือนกัน rand()%nใน C ไม่เหมือนกัน ทุกผลลัพธ์จะต้องมีโอกาสเท่าเทียมกัน กฎและข้อ จำกัด แต่ละบรรทัดของไฟล์ข้อความจะมีจำนวนอักขระเท่ากันและจะต้องไม่เกิน 80 รหัสของคุณจะต้องไม่อ่านเนื้อหาใด ๆ ของไฟล์ข้อความยกเว้น: สายเหล่านั้นมันออกมา บรรทัดแรกในการคำนวณจำนวนอักขระต่อบรรทัดในไฟล์ข้อความ เราสามารถสมมติว่าตัวละครแต่ละตัวในไฟล์ข้อความใช้เวลาหนึ่งไบต์ ตัวแยกบรรทัดจะถือว่ามีความยาว 1 ไบต์ วิธีแก้ปัญหาอาจใช้ตัวคั่นบรรทัดยาว 2 ไบต์เฉพาะในกรณีที่พวกเขาระบุความต้องการนี้ คุณอาจจะสมมติว่าบรรทัดสุดท้ายถูกยกเลิกโดยตัวแยกบรรทัด คำตอบของคุณควรเป็นโปรแกรมที่สมบูรณ์ แต่คุณสามารถระบุอินพุตในวิธีใดก็ได้ที่สะดวก ภาษาและห้องสมุด คุณสามารถใช้ภาษาหรือไลบรารีที่คุณต้องการ หมายเหตุ มีข้อกังวลเกี่ยวกับการคำนวณจำนวนบรรทัดในไฟล์ เมื่อ nimi ชี้ให้เห็นในความคิดเห็นคุณสามารถสรุปได้จากขนาดไฟล์และจำนวนตัวอักษรต่อบรรทัด แรงจูงใจ ในการแชทบางคนถามว่านี่เป็นคำถามที่ว่า "Do X ปราศจาก Y" หรือไม่ ฉันตีความสิ่งนี้เพื่อถามว่าข้อ จำกัด นั้นผิดปกติหรือไม่ …

30
สลับลำดับสัญญาณ
บทนำ สัญญาณของตัวเลขเป็นทั้ง+หรือ-ทุกที่ไม่ใช่ศูนย์จำนวนเต็ม ศูนย์ตัวเองนั้นไม่มีความหมาย ( +0เหมือนกัน-0) ในลำดับต่อไปนี้เราจะสลับกันระหว่างสัญญาณบวกที่ศูนย์และเครื่องหมายลบ ลำดับเริ่มต้นด้วย1เราเขียน1ด้วยเครื่องหมายบวกโดยมีศูนย์ (อันนี้แปลก แต่เราแค่คูณจำนวนด้วย 0) และเครื่องหมายลบ: 1, 0, -1 หมายเลขถัดไปคือ2และเราทำสิ่งเดียวกันอีกครั้ง: 2, 0, -2 ลำดับในที่สุดคือ: 1, 0, -1, 2, 0, -2, 3, 0, -3, 4, 0, -4, 5, 0, -5, 6, 0, -6, 7, 0, -7, ... หรือรูปแบบที่อ่านได้มากขึ้น: a(0) = 1 a(1) = 0 a(2) = …

20
สลายจำนวน!
งานของคุณคือการแยกตัวเลขโดยใช้รูปแบบด้านล่าง นี้จะคล้ายกับการแปลงฐานยกเว้นที่แทนของรายชื่อdigitsในฐานคุณรายการvaluesเช่นว่ารายการเพิ่มขึ้นเพื่อป้อนข้อมูล หากฐานที่กำหนดคือnแต่ละหมายเลขในรายการจะต้องอยู่ในรูปแบบของk*(n**m)ที่ไหน0<=k<nและmไม่ซ้ำกันทั่วทั้งรายการ รายละเอียด รูปแบบอินพุต / เอาท์พุตที่สมเหตุสมผล โปรแกรม / ฟังก์ชั่นของคุณใช้ 2 อินพุทและเอาท์พุทรายการ รายการเอาท์พุทสามารถอยู่ในลำดับใด ๆ 0 สามารถยกเว้นหรือรวมไว้ได้ 0อนุญาตให้นำหน้า Built-in จะได้รับอนุญาต Testcases number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ ทางออกที่สั้นที่สุดในหน่วยไบต์ชนะ
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

8
แปลงเมทริกซ์
เขียนโปรแกรมหรือฟังก์ชั่นที่เมทริกซ์ A (ค่าสูงสุดของมิติของเมทริกซ์คือ 100) จะถูกเปลี่ยนเป็นเมทริกซ์ใหม่ B แต่ละองค์ประกอบของเมทริกซ์ใหม่ B คือผลรวมของเพื่อนบ้านเชิงบวกขององค์ประกอบที่เกี่ยวข้องของเมทริกซ์ A . มีการพิจารณาเฉพาะเพื่อนบ้านในทิศทางสี่มุมฉากและขอบไม่พันกัน อินพุตตัวอย่าง: 1 2 3 4 -1 -2 -3 -4 10 1 2 10 เอาท์พุท: 6 4 2 1 6 13 5 12 10 2 11 12 กฎ: ในฐานะที่เป็นอินพุตใช้จำนวนเต็ม นี่คือรหัสกอล์ฟดังนั้นโค้ดที่สั้นที่สุดในหน่วยไบต์ชนะ
16 code-golf  math  matrix 

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