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

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

11
ค้นหาการจับคู่ต้นทุนขั้นต่ำระหว่างอาร์เรย์ของจำนวนเต็ม
พิจารณาสองเรียงอาร์เรย์ของจำนวนเต็มและYขนาดเมตรและnตามลำดับเมตร&lt; n ยกตัวอย่างเช่นX = ( 1 , 4 ) , Y = ( 2 , 10 , 11 )XXXYYYม.mmnnnm &lt; nm&lt;nm < nX= ( 1 , 4 )X=(1,4) X = (1,4)Y= ( 2 , 10 , 11 )Y=(2,10,11)Y = (2,10,11) เราบอกว่าการจับคู่เป็นวิธีการจับคู่องค์ประกอบของแต่ละบางกับองค์ประกอบของYในลักษณะที่ไม่มีสององค์ประกอบของXจะจับคู่กับองค์ประกอบเดียวกันของ Y ค่าใช้จ่ายของการจับคู่เป็นเพียงผลรวมของค่าสัมบูรณ์ของความแตกต่างในคู่XXXYYYXXXYYY ตัวอย่างเช่นกับ , Y = ( 2 , …

3
เพิ่มประสิทธิภาพ Nullifiers ของฉัน
ฉันเป็นแฟนตัวยงของเกม Creeper World และเป็นภาคต่อโดยเฉพาะ คุณไม่จำเป็นต้องรู้ว่าเกมนี้ทำงานอย่างไรเพื่อตอบคำถามฉันแค่อยากพูดถึงที่มาของคำถามของฉัน ในเกมเป้าหมายของคุณคือทำลาย Emitters ที่กำลังวางไข่ Creeper โดยใช้อาวุธที่เรียกว่า nullifier Nullifiers สามารถทำลายอิมิตเตอร์ใด ๆ ในรัศมีนี้: eee eeeee eenee eeeee eee แต่ละ nullifier สามารถกำหนดเป้าหมายหลาย Emitters วัตถุประสงค์ของคุณ รับอาร์เรย์จำลองแผนที่ 2D ประกอบด้วยอะไรและemittersกับตัวละครสิ่งที่คุณต้องการอาจจะเป็นช่องว่างและอีเมลหรือหมายเลข - เพียงให้แน่ใจว่าพวกเขามีความแตกต่างออกแผนที่เดียวกันมีจำนวนที่เหมาะสมของ nullifiers n (หรือสิ่งที่คุณต้องการ ) ถูกวางไว้เพื่อให้ตัวปล่อยถูกทำลายด้วยจำนวนโมฆะน้อยที่สุด หากมีวิธีที่เหมาะสมที่สุดในการทำเช่นนั้นเพียงแค่แสดงผลออกมาจะดี อย่างไรก็ตามถ้างานนั้นไม่สามารถแก้ไขได้บอกว่ามีตัวส่งสัญญาณจำนวนมากที่ไม่มีเลย์เอาต์ที่จะตีพวกเขาทั้งหมดคุณจะต้องแสดงสิ่งที่แตกต่างออกไปอย่างชัดเจน null จะพอเพียง กฎด่วน: อินพุต: อาร์เรย์หลายมิติ ข้อมูลที่ป้อนจะมีอักขระสองตัวซึ่งไม่มีความหมายและตัวปล่อยรวมอยู่ในคำตอบของคุณ เอาท์พุท: อาร์เรย์หลายมิติ การส่งออกจะมีตัวละครทั้งสามมีความหมายอะไร , อีซีแอลและNullifierหรือผลผลิตแตกต่างถ้าใส่เป็นปัญหาโลกแตก คุณสามารถแทนที่ตัวละครที่ไม่มีอะไรด้วย nullifier …

30
ตัวเลขสุดท้ายจำนวนมาก
สำหรับรายการตัวเลขที่ระบุค้นหาตัวเลขสุดท้ายของ ตัวอย่าง:[ x1, x2, x3, . . . , xn][x1,x2,x3,...,xn][x_1, x_2, x_3, ..., x_n]xxx...xn321x1x2x3…xnx_1 ^{x_2 ^ {x_3 ^ {\dots ^ {x_n}}}} [3, 4, 2] == 1 [4, 3, 2] == 4 [4, 3, 1] == 4 [5, 3, 2] == 5 เพราะ430467213( 4)2)= 316= 430467213(42)=316=430467213 ^ {(4 ^ 2)} = …
12 code-golf  math 

23
แปลงตัวเลขเป็นตัวอักษรและในทางกลับกันเป็นสตริง
ขึ้นอยู่กับรายการของตัวเลขและตัวอักษรที่เทียบเท่ากันใช้อินพุตสตริงแทนที่อักขระของสตริงนั้นด้วยตัวเลข / ตัวอักษรและผลลัพธ์ผลลัพธ์ที่เทียบเท่ากัน รายการ 1 = a 2 = b 3 = c 4 = d 5 = e 6 = f 7 = g 8 = ชม 9 = ฉัน 0 = j อินพุต thisisastring1124 เอาท์พุต t89s9s1str9n7aabd กฎระเบียบ ตัวเลขเทียบเท่ากับตัวอักษรตัวพิมพ์เล็กเท่านั้น ตัวละครใด ๆ นอกรายการจะถูกทิ้งไว้ตามที่เป็น สตริงอินพุตต้องไม่มีช่องว่าง อนุญาตให้ใช้โปรแกรมหรือฟังก์ชั่นเต็มรูปแบบได้ เนื่องจากเป็น code-golf ไบต์ที่น้อยที่สุดจึงชนะ
12 code-golf  string 

12
วาดแผนภาพการกระจาย!
ท้าทาย คุณได้รับจำนวนเต็มสามจำนวนเป็นอินพุต - min_value, max_value, sample_sizeซึ่งคุณสามารถส่งคำตอบเป็นอาร์เรย์หรือพารามิเตอร์หลายตัว งานของคุณคือการส่งออกแผนภาพในรูปแบบที่สะดวกใด ๆที่แสดงความถี่ของตัวเลขใน(min_value, max_value)ช่วงที่ปรากฏขึ้นเมื่อมีการสุ่มเลือกตัวเลขใน(min_value, max_value)ช่วงsample_sizeเวลา ควรสร้างลำดับหมายเลขสุ่มภายในคำตอบของคุณ ด้วยช่วงขนาดใหญ่และขนาดตัวอย่างคุณสามารถเปลี่ยนขั้นตอนที่ไดอะแกรมของคุณใช้ได้ตราบใดที่การแสดงยังคงถูกต้อง ตัวอย่าง ด้วย[1, 5, 10]เป็นอินพุต: o o o x o x o x x x x x x x x 1 2 3 4 5 ด้วย[1, 100, 15]อินพุต (ในขั้นตอน 10 ดังนั้น 00 แสดง 1-9, 10 แสดง 10-19 เป็นต้น): xx …
12 code-golf  random 

8
จัดทำดัชนีภาพนิ่ง Cha-Cha
บทนำ: แม้ว่าในขั้นต้นฉันจะมีเพลงดัตช์อยู่ในหัวของฉันซึ่งเนื้อเพลงคือ: " Doe 'n stapje naar voren, en' n stapje terug " (ซึ่งแปลว่า " ก้าวไปข้างหน้านิดหน่อยและถอยกลับเล็กน้อย ") เมื่อ ฉันค้นหาเนื้อเพลงเต็มฉันรู้ว่าพวกเขากลับไปมาและไม่เคยออกไปด้านข้าง ดังนั้นตอนนี้ฉันจึงใช้เนื้อเพลงของMr C The Slide Man หรือ DJ Casper - Cha-Cha Slideสำหรับความท้าทายนี้ หากเราเพิกเฉยต่อสิ่งอื่นและดูเฉพาะคำว่า "ซ้าย", "ขวา", "ย้อนกลับ" และ "กระโดด" (ฉันนับว่า "กระโดด" เป็นไปข้างหน้า) รวมถึงจำนวนที่กล่าวถึงเพลงเต็มจะมีรายการดังต่อไปนี้ ( ฉันใช้ตัวย่อ LRBH ที่นี่): LBHRLLBHRLBHHRRLLLRLBHHHHRRLLLBHHHHHRLRLRLHRLLBHHLRLBHH นี่คือเนื้อเพลงเต็มเพลงใน code-snippet JavaScript ที่ซ่อนได้ (เพื่อประหยัดพื้นที่) …

11
ค้นหาหมายเลขด้วยผลรวมสูงสุดของเพื่อนบ้าน
ความท้าทาย รับกริดของตัวเลข (10 &lt;= N &lt;= 99) Return number พร้อมผลรวมสูงสุดของตัวเลขสี่ตัวที่อยู่ติดกัน นั่นคือตัวเลขด้านบนด้านล่างด้านขวาและด้านซ้ายของตัวเลข แต่ไม่ใช่ตัวเอง จำนวนของตัวมันเองนั้นไม่ได้นับรวมเฉพาะสี่ประเทศเท่านั้น หมายเลขบนขอบควรได้รับการปฏิบัติเสมือนว่าหมายเลขที่หายไปคือ 0 ฉันจะออกแบบการทดสอบเพื่อหลีกเลี่ยงความสัมพันธ์ ตัวเลขจะไม่ซ้ำ นี่คือรหัสกอล์ฟ ตัวอย่าง ป.ร. ให้ไว้ 56 98 32 96 12 64 45 31 94 18 83 71 กลับ 18 การทดสอบจริง ป.ร. ให้ไว้ 98 95 67 66 57 16 40 94 84 37 87 14 …

1
วิธีที่สั้นที่สุดในการกำหนดฟังก์ชั่นวนซ้ำแบบไม่ระบุชื่อใน Octave คืออะไร
ฉันชอบการเขียนโปรแกรมที่ใช้งานได้ใน Octave แต่ในทางปฏิบัติมันค่อนข้างไม่สะดวก ฉันสงสัยเกี่ยวกับวิธีที่สั้นที่สุดในการกำหนดฟังก์ชั่นวนซ้ำแบบไม่ระบุชื่อ ฉันมีความคิดบางอย่าง แต่ฉันสงสัยว่าถ้ามีวิธีที่จะรวมความคิดเหล่านี้เพื่อทำให้สั้นลง เพื่อประโยชน์ของคำถามนี้ให้นับซ้ำเป็นศูนย์ซ้ำ (เพื่อให้ส่วนของข้อมูลง่ายที่สุดเท่าที่จะทำได้) หากเหตุผลของฉันถูกต้องไม่มีชื่อตัวแปรที่ฉันใช้ในตัวอย่างต่อไปนี้ควรทับซ้อนกัน ฟังก์ชั่นที่ต้องการคือq(n)ซึ่งควรกลับเป็นศูนย์เสมอ iถูกนำมาใช้เป็นตัวแปรเคาน์เตอร์fเป็นฟังก์ชันเวียนซึ่งเราเรียกในขอบเขตของท้องถิ่นgf 44 ไบต์ "คำจำกัดความแบบอินไลน์ของf" q=@(n)(f=@(g,i){@()g(g,i-1),i}{~i+1}())(f,n) 44 ไบต์ "คำนิยามรายการอาร์กิวเมนต์ของf" q=@(n,f=@(g,i){@()g(g,i-1),i}{~i+1}())f(f,n) 44 ไบต์ "คำจำกัดความที่แยกต่างหากของf" f=@(i,g){@()g(i-1,g),i}{~i+1}();q=@(n)f(n,f) 41 ไบต์ "ฟังก์ชันที่ต้องการเป็นค่าส่งคืน" f=@(g)@(n){@()g(g)(n-1),n}{~n+1}();q=f(f) ว่า 'ชนะ' ปัจจุบันมีแรงบันดาลใจจากคำตอบนี้โดย flawr อย่างไรก็ตามด้วยวิธีการที่หลากหลายในการทำสิ่งนี้บางทีใครบางคนอาจคิดถึงวิธีการที่สั้นลง แน่นอนว่าเป้าหมายของมันคือให้ต่ำกว่า 39 ไบต์สำหรับฟังก์ชั่น "เต็ม" ลองออนไลน์!
12 code-golf  tips  octave 

1
pangrams ที่ระบุตนเอง
Pangrams สุนัขจิ้งจอกสีน้ำตาลได้อย่างรวดเร็วเพิ่มขึ้นกว่าสุนัขขี้เกียจ. นี่คือตัวอย่างของ pangram - ประโยคที่มีตัวอักษรทุกตัวอักษรอย่างน้อยหนึ่งครั้ง ตนเองแจงแกรมเป็นประโยคที่ตอบสนองเกณฑ์ที่จะเป็นแกรมโดยการผลิตการวิเคราะห์ของการนับตัวอักษรของตัวเอง ตัวอย่างของการบรรลุเป้าหมายนี้คือประโยค pangram นี้มีสี่ As, หนึ่ง B, สอง Cs, หนึ่ง D, สามสิบ Es, หก Fs, ห้า Gs, เจ็ด Hs, สิบเอ็ดคือหนึ่ง J, หนึ่ง K, หนึ่ง K, สอง Ls, สอง Ms, สิบแปด Os, สอง Ps หนึ่ง Q ห้าอาร์เอสเอสยี่สิบเจ็ดแปดสิบสองเราสองคนเจ็ด Vs แปดแปดวินาทีสอง Xs สามปีและหนึ่ง Z ความท้าทาย ผลิตฟังก์ชั่นที่มีการป้อนข้อมูลเป็นสตริงที่นำไปสู่สินค้าคงคลังจดหมาย ในตัวอย่างอินพุตจะเป็น …

9
นับจำนวนฟิลด์ในแต่ละระเบียน csv
ลองนึกภาพไฟล์ข้อความที่แต่ละระเบียน csv อาจมีจำนวนฟิลด์ต่างกัน ภารกิจคือการเขียนโค้ดเพื่อแสดงจำนวนฟิลด์ที่มีในแต่ละเรคคอร์ดของไฟล์ คุณสามารถสมมติว่าไม่มีบรรทัดส่วนหัวในไฟล์และสามารถอ่านได้จากไฟล์หรืออินพุตมาตรฐานตามที่คุณเลือก คุณสามารถสมมติรุ่นของrfc4180สำหรับกฎ csv ซึ่งฉันจะอธิบายด้านล่างสำหรับคำจำกัดความของแต่ละบรรทัดของไฟล์ นี่เป็นเวอร์ชั่นที่แก้ไขเล็กน้อยของส่วนที่เกี่ยวข้องของข้อมูลจำเพาะ: คำจำกัดความของรูปแบบ CSV แต่ละระเบียนจะอยู่ในบรรทัดที่แยกต่างหากคั่นด้วยตัวแบ่งบรรทัด (CRLF) ตัวอย่างเช่น: aaa,bbb,ccc CRLF zzz,yyy,xxx CRLF ระเบียนสุดท้ายในไฟล์อาจมีหรือไม่มีตัวแบ่งบรรทัดสิ้นสุด ตัวอย่างเช่น: aaa,bbb,ccc CRLF zzz,yyy,xxx (กฎข้อ 3. ใช้ไม่ได้กับการท้าทายนี้) ภายในแต่ละระเบียนอาจมีหนึ่งหรือมากกว่าหนึ่งช่องคั่นด้วยเครื่องหมายจุลภาค ช่องว่างถือเป็นส่วนหนึ่งของเขตข้อมูลและไม่ควรละเว้น แต่ละฟิลด์อาจมีหรือไม่มีก็ได้ในเครื่องหมายคำพูดคู่ หากเขตข้อมูลไม่ได้อยู่ในเครื่องหมายคำพูดคู่การอ้างอิงสองครั้งอาจไม่ปรากฏในเขตข้อมูล ตัวอย่างเช่น: "aaa","bbb","ccc" CRLF zzz,yyy,xxx ฟิลด์ที่มีตัวแบ่งบรรทัด (CRLF) เครื่องหมายคำพูดคู่และเครื่องหมายจุลภาคควรอยู่ในเครื่องหมายคำพูดคู่ ตัวอย่างเช่น: "aaa","b CRLF bb","ccc" CRLF zzz,yyy,xxx หากมีการใช้เครื่องหมายอัญประกาศคู่เพื่อใส่เขตข้อมูลดังนั้นเครื่องหมายอัญประกาศคู่ที่ปรากฏภายในเขตข้อมูลจะต้องถูกหลีกเลี่ยงโดยนำหน้าด้วยเครื่องหมายคำพูดคู่อื่น ตัวอย่างเช่น: "aaa","b""bb","ccc" ตัวอย่าง การป้อนข้อมูล: ,"Hello, World!" …
12 code-golf 

8
ตัวเลขที่ปรากฏ
การป้อนข้อมูล: รายการจำนวนเต็ม (ซึ่งจะไม่มีวันเป็นศูนย์) เอาท์พุท: รายการขนาดเดียวกันที่มีจำนวนขึ้นอยู่กับสิ่งต่อไปนี้: หากรายการปัจจุบันเป็นลบ: ดูรายการทั้งหมดก่อนรายการนี้และนับจำนวนหลักที่เกิดขึ้นในตัวเลขอื่น ๆ หากรายการปัจจุบันเป็นบวกแทน: ดูรายการทั้งหมดหลังรายการนี้และนับจำนวนหลักที่เกิดขึ้นในตัวเลขอื่น ๆ มีการบิดหนึ่งครั้ง: หากขนาดของรายการเป็นจำนวนคู่เราจะนับทุก ๆ หมายเลขเพียงครั้งเดียว (แม้ว่าจะตรงกับตัวเลขหลายหลัก) และถ้าขนาดเป็นเลขคี่เราจะนับจำนวนตัวเลขทุกหลักสำหรับรายการปัจจุบันแต่ละรายการ (ซ้ำกัน ตัวเลขจะถูกนับหลายครั้ง) ลองยกตัวอย่างเพื่ออธิบายให้ฟังหน่อย: ตัวอย่างที่มีรายการคู่: Input: [4, 10, 42, -10, -942, 8374, 728, -200] Output: [3, 2, 4, 1, 2, 1, 1, 5 ] ขนาดของรายการเป็นเลขคู่ดังนั้นเราจะนับเฉพาะตัวเลขแต่ละครั้งเท่านั้น 4มันเป็นแง่บวกดังนั้นเราจึงตั้งตารอ มีสามตัวเลขที่มีหลักมี4( 42, -942, 8374) 3ดังนั้นเราจึงเริ่มต้นด้วย 10มันเป็นแง่บวกดังนั้นเราจึงตั้งตารอ มีตัวเลขสองตัวที่มีทั้งตัวเลข1และ / …

19
ฐานของคู่
พื้นหลัง IEEE 754 รูปแบบจุดลอยตัวความแม่นยำสองเท่าเป็นวิธีการแสดงตัวเลขจริงด้วย 64 บิต ดูเหมือนว่าต่อไปนี้: จำนวนจริงnจะถูกแปลงเป็น a doubleในลักษณะดังต่อไปนี้: เครื่องหมายบิตsคือ 0 ถ้าตัวเลขเป็นบวกหรือ 1 มิฉะนั้น ค่าสัมบูรณ์ของnมีตัวแทนอยู่ในรูปแบบ2**y * 1.xxxกล่าวคืออำนาจของ 2ครั้งฐาน เลขชี้กำลังeคือy(กำลัง 2) ลบ 1023 เศษส่วนfคือxxxส่วน (ส่วนที่เป็นเศษส่วนของฐาน) ซึ่งมีค่า 52 บิตที่สำคัญที่สุด ในทางกลับกันรูปแบบบิต (กำหนดโดยเครื่องหมายsเลขชี้กำลังeและเศษส่วนfแต่ละจำนวนเต็ม) แทนจำนวน: (s ? -1 : 1) * 2 ** (e - 1023) * (1 + f / (2 ** 52)) …
12 code-golf 

15
Binning ในเวลา
ภารกิจในการท้าทายนี้คือการใส่องค์ประกอบของอาร์เรย์ลงในถังขยะเวลา อินพุตจะเป็นอาร์เรย์จำนวนเต็มบวกที่ไม่ลดลงซึ่งแสดงเวลาของเหตุการณ์และจำนวนเต็มซึ่งแทนขนาดของแต่ละ bin ให้เราเริ่มด้วยตัวอย่าง เราเรียกอาร์เรย์อินพุทและเอาท์พุทอาร์เรย์AO `A = [1,1,1,2,7,10]` and `bin_size = 2`. `O = [4,0,0,1,1]`. ทำไม ? ด้วยbin_size = 2เราจะมีช่วงเวลาต่อไปนี้: (0,2], (2,4], (4,6], (6,8], (8,10]ที่สี่รายการ(1,1,1,2)อยู่ในช่วงแรก(0,2]ไม่มีใครในช่วงที่สองและสามซึ่งเป็นหนึ่ง7ในช่วงเวลา(6,8]และเป็นหนึ่งในช่วงเวลา10(8,10] รหัสของคุณควรพิจารณาทุกช่วงเวลาที่มีความยาวbin_sizeเริ่มต้น0และนับจำนวนที่Aมีในแต่ละตัว คุณควรมีปลายด้านขวามือของช่วงเวลาในถังเพื่อให้ในตัวอย่างข้างต้นจะถูกรวมอยู่ในจำนวนของ2 4รหัสของคุณควรทำงานในเวลาเชิงเส้นในผลรวมของความยาวของอินพุตและเอาต์พุต ตัวอย่างเพิ่มเติม: `A = [1,2,7,12,15]` and `bin_size = 5`. `O = [2, 1, 2]`. `A = [1,2,7,12,15]` and `bin_size = 3`. `O = …

30
ค่าลอการิทึมจำนวนเต็ม
จำนวนเต็ม ป.ร. ให้N , P &gt; 1ค้นหาเลขที่ใหญ่ที่สุดดังกล่าวว่าMP ^ M ≤ N I / O: การป้อนข้อมูลจะได้รับเป็น 2 จำนวนเต็มและN การส่งออกจะเป็นจำนวนเต็มPM ตัวอย่าง: 4, 5 -&gt; 0 33, 5 -&gt; 2 40, 20 -&gt; 1 242, 3 -&gt; 4 243, 3 -&gt; 5 400, 2 -&gt; 8 1000, 10 -&gt; 3 หมายเหตุ: การป้อนข้อมูลจะถูกต้องเสมอเช่นมันจะเป็นจำนวนเต็มมากกว่า 1 …

2
ย่อยสลายพหุนาม
ได้รับพหุนามสมบูรณ์ของระดับที่มากกว่าหนึ่งอย่างสมบูรณ์สลายมันให้เป็นองค์ประกอบของพหุนามสมบูรณ์ของดีกรีมากกว่าหนึ่งอย่างสมบูรณ์ รายละเอียด พหุนามหนึ่งคือพหุนามกับจำนวนเต็มเป็นเพียงค่าสัมประสิทธิ์ ได้รับสองพหุนามpและองค์ประกอบจะถูกกำหนดโดยq(p∘q)(x):=p(q(x)) การสลายตัวของพหุนามสมบูรณ์pเป็นลำดับที่ จำกัด ของพหุนามสมบูรณ์q1,q2,...,qnที่deg qi &gt; 1สำหรับทุกคน1 ≤ i ≤ nและp(x) = q1(q2(...qn(x)...))และทั้งหมดqiไม่แยกย่อยสลายต่อไป การสลายตัวนั้นไม่จำเป็นต้องซ้ำกัน คุณสามารถใช้รายการของค่าสัมประสิทธิ์หรือสร้างขึ้นในประเภทพหุนามเป็นอินพุตและเอาต์พุต โปรดทราบว่าบิวด์อินจำนวนมากสำหรับงานนี้จะสลายการแยกส่วนแบบพหุนามมากกว่าฟิลด์ที่กำหนดและไม่จำเป็นต้องเป็นจำนวนเต็มในขณะที่ความท้าทายนี้ต้องใช้พหุนามจำนวนเต็มแบบสลายตัว (พหุนามจำนวนเต็มจำนวนหนึ่งอาจยอมรับการสลายตัวเป็นชื่อพหุนามจำนวนเต็มรวมทั้งการสลายตัวที่มีชื่อพหุนาม rational) ตัวอย่าง x^2 + 1 [x^2 + 1] (all polynomials of degree 2 or less are not decomposable) x^6 - 6x^5 + 15x^4 - 20x^3 + 15x^2 - 6 x …

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