การเขียนโปรแกรมปริศนา & รหัสกอล์ฟ

คำถาม & คำตอบสำหรับผู้ชื่นชอบการเขียนโปรแกรมปริศนา

6
การซูมย่อยพิกเซล
งานของคุณคือถ่ายภาพ 24 BPP sRGB และส่งภาพเดียวกันที่มีการลดขนาด 3 เท่าลงในพิกเซลย่อยสีแดงสีเขียวและสีน้ำเงิน ภาพที่ได้จะเป็นพิกเซลสีดำบริสุทธิ์สีแดงสีเขียวและสีน้ำเงินทั้งหมด แต่ละพิกเซลจากภาพต้นฉบับเมื่อซูมจะสร้างการจัดเรียงย่อยย่อย 9 พิกเซลที่สามารถเปิดหรือปิดได้ (เช่นสีหรือดำที่เกี่ยวข้อง) การจัดเรียงที่เฉพาะเจาะจงใช้คอลัมน์สามสีแดงเขียวและน้ำเงินตามลำดับดังนี้: (โปรดทราบว่าเส้นขอบบน "พิกเซล" เหล่านี้ใช้สำหรับการสาธิตเท่านั้น) เนื่องจากแต่ละ subpixels ทั้งเก้าสามารถเปิดหรือปิดได้คุณจะต้องทำการ quantize ภาพอินพุตและใช้รูปแบบ subpixel ที่แตกต่างกันเพื่อให้ได้ความสว่าง 3 ระดับ สำหรับแต่ละพิกเซลย่อยในภาพ: สำหรับระดับสี 0-74 เครื่องหมายย่อยทั้งหมดควรเป็นสีดำ สำหรับระดับสี 75-134 พิกเซลย่อยกลางควรเป็นสีที่เกี่ยวข้องและอีกสองสีควรเป็นสีดำ สำหรับระดับสี 135-179, subpixel กลางควรเป็นสีดำและอีกสองควรเป็นสีที่เกี่ยวข้อง สำหรับระดับสี 180-255 ทั้งสาม subpixels ควรเป็นสีที่เกี่ยวข้อง ฉันเลือกช่วงระดับเหล่านี้เพราะสิ่งเหล่านั้นเป็นสิ่งที่ดูดี นำการแปลงนี้ไปใช้กับทุกพิกเซลในภาพและส่งออกภาพที่มีขนาดย่อยพิกเซล ตัวอย่างพิกเซลเดี่ยว rgb (40, 130, 175) จะสร้างรูปแบบนี้: rgb …

3
ปัญหาการไหลของต้นทุนต่ำสุด
เครือข่ายการไหลเป็นกราฟG = (V, E)ที่มีจุดสุดยอดแหล่งที่มาs ϵ Vและจุดสุดยอดอ่างล้างจานt ϵ Vและที่ขอบทุก(u, v) ϵ Eบนกราฟ (เชื่อมต่อโหนดu ϵ Vและv ϵ V) มี 2 ปริมาณที่เกี่ยวข้องกับมัน: c(u, v) >= 0ความจุของขอบ a(u, v) >= 0ค่าใช้จ่ายในการส่งหนึ่งหน่วยผ่านขอบ เรากำหนดฟังก์ชั่นที่จะได้รับจำนวนหน่วยที่ถูกส่งผ่านขอบให้0 <= f(u, v) <= c(u, v) (u, v)ดังนั้นค่าใช้จ่ายสำหรับขอบที่กำหนดคือ(u, v) ปัญหาการไหลขั้นต่ำค่าใช้จ่ายถูกกำหนดให้เป็นการลดค่าใช้จ่ายรวมกว่าขอบทั้งหมดสำหรับจำนวนเงินไหลที่กำหนดให้ตามปริมาณต่อไปนี้:a(u, v) * f(u, v)d ข้อ จำกัด ต่อไปนี้ใช้กับปัญหา: ข้อกำหนดด้านความจุ : การไหลผ่านขอบที่กำหนดอาจไม่เกินความจุของขอบนั้น ( f(u, …

2
การบีบอัดเขาวงกต ASCII
ท้าทาย ออกแบบอัลกอริทึมการบีบอัดแบบพิเศษสำหรับการบีบอัดเขาวงกต ASCII คุณจะต้องสร้างทั้งอัลกอริทึมการบีบอัดและอัลกอริธึมการบีบอัด คะแนนของคุณจะขึ้นอยู่กับขนาดของเขาวงกตที่บีบอัดของคุณ เขาวงกต เขาวงกตเหล่านี้จะทำส่วนใหญ่ของตัวละคร(ชั้น) +, -, |และ#(ผนัง) และอีกหนึ่งแต่ละ^(เริ่มต้น) และ$(จบ) พวกเขาอาจมีตัวอักษร ASCII ซึ่งนับเป็นกระเบื้องปูพื้น สำหรับจุดประสงค์ของการท้าทายนี้เขาวงกตไม่จำเป็นต้องแก้ปัญหาและความหมายที่แท้จริงของเนื้อหาเขาวงกตนั้นไม่เกี่ยวข้อง + จะใช้สำหรับเซลล์ผนังที่มีเซลล์ผนังติดกันอย่างน้อยหนึ่งเซลล์ในแนวนอนและอย่างน้อยหนึ่งเซลล์ติดผนังแนวตั้ง | จะใช้สำหรับเซลล์ผนังที่มีเซลล์ผนังติดกันอย่างน้อยหนึ่งเซลล์ในแนวตั้ง แต่ไม่มีเซลล์ผนังติดในแนวนอน - จะใช้สำหรับเซลล์ผนังที่มีเซลล์ผนังติดกันอย่างน้อยหนึ่งเซลล์ในแนวนอน แต่จะไม่มีเซลล์ผนังติดกันในแนวตั้ง # จะถูกใช้สำหรับเซลล์ผนังที่ไม่ได้อยู่ติดกันกับเซลล์ผนังอื่น ๆ เขาวงกตทั้งหมดเป็นรูปสี่เหลี่ยมผืนผ้า แต่ไม่จำเป็นต้องมีการจัดแนวตาราง / กำแพงตามปกติ บีบอัด เขาวงกต 1 +----+---- | o | | | -- | o--+ | | | $ --^-+-+--- เขาวงกต 2 …

4
มันถูกต้องดัดแปลง UTF-8?
UTF-8เป็นวิธีที่ง่ายในการเข้ารหัส Unicode codepoints ในรูปแบบความกว้างของตัวแปรซึ่งจะไม่ทำให้เกิดความสับสนกับโค้ดที่ไม่รู้ Unicode ภาพรวม UTF-8 ไบต์ในช่วง 1-0x7F โดยรวมจะถูกต้องตามปกติ ไบต์ที่มีรูปแบบบิต10XX XXXXถือว่าเป็นไบต์ต่อเนื่องโดยใช้บิตที่มีนัยสำคัญน้อยที่สุดหกบิตที่ใช้ในการเข้ารหัสส่วนของ codepoint สิ่งเหล่านี้จะต้องไม่ปรากฏขึ้นเว้นแต่จะได้รับการคาดหวังจากไบต์ก่อนหน้า ไบต์ที่มีรูปแบบ110X XXXXคาดว่าหนึ่งไบต์ต่อเนื่องหลังจากนั้น ไบต์ที่มีรูปแบบ1110 XXXXคาดว่าจะมีความต่อเนื่องสองไบต์หลังจากนั้น ไบต์ที่มีรูปแบบ1111 0XXXคาดว่าสามไบต์ต่อเนื่องหลังจากนั้น ไบต์อื่นทั้งหมดไม่ถูกต้องและไม่ควรปรากฏที่ใดก็ได้ในสตรีม UTF-8 5, 6 และ 7 ไบต์เป็นไปได้ในทางทฤษฎี แต่จะไม่ได้รับอนุญาตสำหรับจุดประสงค์ของการท้าทายนี้ การเข้ารหัสที่ยาวนานเกินไป UTF-8 ยังต้องการให้ codepoint ควรแสดงด้วยจำนวนไบต์ต่ำสุด ลำดับไบต์ใด ๆ ที่สามารถแทนด้วยจำนวนไบต์ที่น้อยกว่านั้นไม่ถูกต้อง แก้ไข UTF-8 เพิ่มข้อยกเว้นหนึ่งข้อสำหรับอักขระ null (U + 0000) ซึ่งควรแสดงเป็นC0 80(การแสดงฐานสิบหก) และแทนที่จะปิดการใช้งาน null null เพื่อปรากฏที่ใดก็ได้ในสตรีม (สิ่งนี้ทำให้เข้ากันได้กับสตริงที่สิ้นสุดด้วยค่า …

6
ช่วย Notwen จำลองแรงโน้มถ่วง!
Notwen ต้องการศึกษาจลนศาสตร์ของร่างกายที่ถูกโยนออกมาจากที่สูงในเขตความโน้มถ่วงที่สม่ำเสมอ แต่น่าเสียดายที่เขาไม่มีความเป็นไปได้ทางเทคนิคที่จะไปยังที่สูงพอและสังเกตวัตถุในขณะที่ตกลงมา แต่ใครไม่ต้องการเห็นความก้าวหน้าทางวิทยาศาสตร์ดังนั้น ... มาช่วย Notwen สร้างเครื่องมือจำลองแรงโน้มถ่วง! พื้นหลังทางกายภาพ วัตถุตกจากที่สูง hชั่วโมงh( ไม่มีความเร็วเริ่มต้น ) ในเขตความโน้มถ่วงสม่ำเสมอผลกระทบทางบรรยากาศเช่นการลากหรือลมจะเพิ่มความเร็วและความเร็วขึ้นสู่พื้นดินตามเวลา "อัตราการเปลี่ยนแปลง" ของความเร็วในหน่วยเวลานี้เรียกว่าการเร่งความเร็วด้วยแรงโน้มถ่วง ใกล้พื้นผิวโลกมันมีค่าเท่ากับแต่สำหรับจุดประสงค์ของการท้าทายนี้เราจะใช้ค่าซึ่งหมายความว่าในวินาทีเดียววัตถุเพิ่มความเร็วประมาณ{s} ลองพิจารณาความสูงซึ่งเป็นผลคูณของ100mแล้วจินตนาการถึงการหารความสูงนั้นเป็นระยะเท่ากันละ100g≈9.8ms2ก.≈9.8ม.s2g\approx9.8\frac{m}{s^2}10ms210ms210\frac{m}{s^2}10ms10ms10 \frac{m}{s}hhh100m100m100m100100100เมตรยาว Notwen ต้องการวัดระยะเวลาที่วัตถุจะตกในแต่ละช่วงเวลาดังนั้นนั่นคือสิ่งที่เรามุ่งหวังที่จะคำนวณเช่นกัน จลนศาสตร์สมัยใหม่- การกระโดดข้ามเทคนิค - บอกเราว่า: โดยที่สำหรับค่าทั้งหมดของในกรณีของเราเป็นค่าเริ่มต้น ความเร็วที่จุดเริ่มต้นของช่วงและคือช่วงเวลาของช่วงเวลาk ^ \ text {th} (สำหรับการอ้างอิงการทำดัชนีเริ่มต้นที่0ด้วยv_0 = 0 ) เรายังรู้ว่าv_kมีนิพจน์ดังต่อไปนี้: Δhk=vktk+12gt2kΔhk=vktk+12gtk2\Delta h_k=v_kt_k+\dfrac{1}{2}gt_k^2Δhk≡Δh=100mΔhk≡Δh=100m\Delta h_k\equiv\Delta h=100mkkkvkvkv_kkthkthk^\text{th}tktkt_kkthkthk^\text{th}000v0=0v0=0v_0=0vkvkv_kvk=2g(Δh0+Δh1+⋯+Δhk−1)−−−−−−−−−−−−−−−−−−−−−−−−√=2gkΔh−−−−−−√vk=2g(Δh0+Δh1+⋯+Δhk−1)=2gkΔhv_k=\sqrt{2g(\Delta h_0+\Delta h_1+\cdots+\Delta h_{k-1})}=\sqrt{2gk\Delta h} ตัวเลขเราได้vk=2000k−−−−−√msvk=2000kmsv_k=\sqrt{2000k}\frac{m}{s}และเสียบเข้ากับสมการแรกและแก้หาtktkt_kให้tk=25–√(k+1−−−−√−k−−√)s(*)(*)tk=25(k+1−k)s\color{red}{\boxed{t_k=2\sqrt{5}\left(\sqrt{k+1}-\sqrt{k}\right)s}}\tag{*} ดังนั้นวัตถุเดินทางช่วงแรก (k=0k=0k=0 ) ใน4.4721s4.4721s4.4721sช่วงเวลาที่สอง (k=1k=1k=1 …

1
ไขว้ Dyadic
เช่นเดียวกับสัญลักษณ์ APL ส่วนใหญ่⍉จะมีความหมายต่างกันเมื่อถูกเรียกด้วยอาร์กิวเมนต์หนึ่งตัว (transpose) เทียบกับสองข้อโต้แย้ง ความท้าทายนี้เกี่ยวข้องกับสิ่งหลังซึ่งคล้ายกับnumpy.moveaxisใน Python หรือpermuteใน MATLAB แต่มีประสิทธิภาพมากกว่า order ⍉ Aเมื่อorderมีรายการที่แตกต่าง เมื่อสมาชิกทั้งหมดของorderแตกต่างกันorder ⍉ Aเท่ากับ: numpy.moveaxis(A, tuple(range(len(A.shape)), order) ใน Python หรือ permute(A,order)ใน MATLAB อ้างจากเอกสารของหลัง: B = permute (A, order) จัดเรียงขนาดของ A ใหม่เพื่อให้อยู่ในลำดับที่ระบุโดยลำดับเวกเตอร์ อาร์เรย์ผลลัพธ์ B มีค่าเดียวกับ A แต่ลำดับของตัวห้อยที่จำเป็นในการเข้าถึงองค์ประกอบเฉพาะนั้นได้รับการจัดเรียงใหม่ตามที่ระบุโดยคำสั่ง ตัวอย่างเช่นสมมติว่าAเป็นอาเรย์ 3D B ← (2 0 1)⍉Aและให้ จากนั้น B ก็เป็นเช่นนั้นB[x0,x1,x2] = A[x2,x0,x1]สำหรับทุกคนx2,x0,x1 …

1
นับอาร์เรย์ที่ไม่ซ้ำกันจริงๆ
นี่คือการติดตามขึ้นไปนับอาร์เรย์ที่ทำให้ชุดไม่ซ้ำกัน ความแตกต่างที่สำคัญคือนิยามของความเป็นเอกลักษณ์ พิจารณาอาร์เรย์ของความยาวA nอาร์เรย์มีจำนวนเต็มบวกเท่านั้น A = (1,1,2,2)เช่น ให้เรากำหนดf(A)เป็นชุดของผลรวมของทุกคนที่ไม่ว่างเปล่า subarrays Aต่อเนื่องกันของ ในกรณีf(A) = {1,2,3,4,5,6}นี้ ขั้นตอนในการผลิตf(A) มีดังนี้: subarrays ของAreA จำนวนเงินของตนมี(1), (1), (2), (2), (1,1), (1,2), (2,2), (1,1,2), (1,2,2), (1,1,2,2) ชุดที่คุณได้รับจากรายการนี้จึงเป็น1,1,2,2,2,3,4,4,5,6{1,2,3,4,5,6} เราเรียกอาเรย์ที่A ไม่ซ้ำกันถ้าไม่มีอาเรย์อื่นBที่มีความยาวเท่ากันเช่นนั้นf(A) = f(B)ยกเว้นสำหรับอาเรย์ที่Aกลับด้าน เป็นตัวอย่างf((1,2,3)) = f((3,2,1)) = {1,2,3,5,6}แต่ไม่มีความยาวอื่น ๆ3ที่สร้างชุดของผลรวมเดียวกัน งาน งานสำหรับที่กำหนดnและsจะนับจำนวนอาร์เรย์ที่ไม่ซ้ำกันของความยาวนั้น คุณสามารถสรุปได้ว่าsอยู่ระหว่างและ1 9คุณจะต้องนับอาร์เรย์ที่องค์ประกอบที่มีทั้งจำนวนเต็มรับหรือs s+1เช่นถ้าs=1อาร์เรย์ที่คุณกำลังนับเพียง แต่มีและ1 2อย่างไรก็ตามคำจำกัดความของความเป็นเอกลักษณ์นั้นเกี่ยวข้องกับอาเรย์อื่นที่มีความยาวเท่ากัน ในฐานะที่เป็นตัวอย่างที่เป็นรูปธรรม[1, 2, 2, 2]คือไม่[1, 1, …

4
นับมุมมุมและใบหน้าของคิวบ์ตัด
มาจากโพสต์แซนด์บ็อกซ์นี้ นี่คือแรงบันดาลใจจากการทดสอบคณิตศาสตร์นักเรียนระดับประถมที่ 8 Intro เรามีลูกบาศก์ที่มีมุมต่อไปนี้ A(0, 0, 0) B(1, 0, 0) C(1, 1, 0) D(0, 1, 0) E(0, 0, 1) F(1, 0, 1) G(1, 1, 1) H(0, 1, 1) คิวบ์นี้มีมุมที่ชัดเจน 8, 12 ขอบและ 6 ใบหน้าอย่างชัดเจน หากตอนนี้เราตัดมุม G ออกไปดังนั้นระนาบการตัดของเราจะผ่านตรงกลางของขอบเดิมที่อยู่ติดกันเราเพิ่มมุมใหม่ 2 มุมขอบใหม่ 3 อันและใบหน้าใหม่หนึ่งอัน โปรดเพลิดเพลินไปกับผลงานศิลปะที่วาดด้วยมือเพื่อความกระจ่างชัดยิ่งขึ้น อินพุต รับรายการมุม (ในตัวอย่างนี้ระบุโดย AH) ที่จะถูกตัดออกคำนวณจำนวนมุมขอบและใบหน้าใหม่ คุณป้อนข้อมูลในรูปแบบที่คุณต้องการตราบใดที่มันตอบสนองต่อมุมเดียวกัน (เช่นแทน …
9 code-golf 

7
Magic: The Gathering, Spelling
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ MtG-goodness: Magic: The Gathering Combat with Abilities สถานที่ตั้ง: ในเวทย์มนตร์: การรวบรวมคุณร่ายคาถาโดยการจ่ายมานาของพวกเขาโดยการแตะที่ที่ดินตามจำนวนที่ต้องการ ดินแดนเหล่านี้สามารถสร้างหนึ่งในห้าสีที่: สีขาว (W) สีน้ำเงิน (U) ดำ (B) แดง (R) เขียว (G) ราคาประกอบด้วยสองส่วนคือตัวเลขซึ่งเป็นข้อกำหนดของมานาทั่วไปและชุดของสัญลักษณ์ที่แสดงถึงความต้องการมานาที่มีสี จำนวนเป็นค่าใช้จ่ายมานะทั่วไปและสามารถใช้สีของมานะใด ๆ เพื่อตอบสนองความมันเช่นสามารถชำระเงินด้วย(3) WGGสัญลักษณ์มีความต้องการสีเฉพาะ 1: 1 เช่นWWUBRจะต้องมีมานาขาว 2 ตัว, 1 สีน้ำเงิน, 1 ดำและ 1 แดง ส่วนทั่วไปจะมาก่อนส่วนที่มีสี เพื่อเป็นการเตือนความจำ(0)คือค่าใช้จ่ายที่ถูกต้องและต้องจัดการ คุณสามารถมีค่าใช้จ่ายที่เป็นค่าทั่วไปหรือสีทั้งหมดหรือทั้งสองอย่าง ตัวอย่างเช่นการ์ดต่อไปนี้มีราคา 4BB และจ่ายด้วย 4 ของมานาที่มีสีอะไรและมานาดำ 2 อัน: ดินแดนในการท้าทายนี้จะสร้างมานาหนึ่งอัน อย่างไรก็ตามเราจะพิจารณาดินแดนที่สามารถผลิตได้หลายสี …

4
ต้นไม้ ASCII art H
ต้นไม้ Hเป็นโครงสร้างต้นไม้เศษส่วนที่เริ่มต้นด้วยบรรทัด ในการวนซ้ำแต่ละครั้ง T branch จะถูกเพิ่มในจุดปลายทั้งหมด ในการท้าทายนี้คุณต้องสร้างการแสดง ASCII ของระดับต้นไม้ H ทุกวินาที ระดับแรกมีเพียงสามตัวอักษรยัติภังค์ลบ: --- ระดับถัดไปถูกสร้างซ้ำ: สร้างเมทริกซ์ 2x2 ของสำเนาจากระดับก่อนหน้าโดยคั่นด้วยช่องว่างหรือบรรทัดสามบรรทัด เชื่อมต่อกึ่งกลางของสำเนาด้วยเส้นศิลปะ ASCII ในรูปแบบของ H. ใช้-สำหรับเส้นแนวนอน|สำหรับเส้นแนวตั้งและ+เมื่อใดก็ตามที่เส้นตรงเข้าหากัน ระดับที่สอง -+- -+- | | +-----+ | | -+- -+- ระดับที่สาม -+- -+- -+- -+- | | | | +--+--+ +--+--+ | | | | | | -+- …

3
เป็นไปได้ของวงจร?
เขียนโปรแกรมหรือฟังก์ชั่นที่รับอินพุต: ตัวต้านทานทั้งหมดที่มีและค่าความต้านทานและเอาท์พุทเป็นค่าความจริงว่าเป็นไปได้หรือไม่ที่จะได้ความต้านทานโดยใช้ตัวต้านทานเหล่านั้น กฎ: รูปแบบใด ๆ สำหรับการป้อนข้อมูลจะทำ จะมีตัวต้านทานอย่างน้อย 1 ตัวและโปรแกรมของคุณควรจะออกตัวต้านทานอย่างน้อย 10 ตัว ความต้านทานของตัวต้านทานที่มีอยู่ทั้งหมดและความต้านทานที่ต้องการจะเป็นจำนวนเต็มบวก สำหรับตัวต้านทานที่มีหากค่าเศษส่วนเป็นไปได้ความต้านทานที่ต้องการอาจเป็นค่าโดยประมาณ (ดูตัวอย่าง) เอาต์พุตควรเป็นค่าเฉพาะ 2 ค่าสำหรับค่าที่เป็นไปได้และค่าที่เป็นไปไม่ได้ ตัวต้านทานอาจเชื่อมต่อในลักษณะใด ๆ ความต้านทานอนุกรม : สำหรับความต้านทาน n ในซีรีย์: ผล = R1 + R2 + R3 + .... Rn ความต้านทานแบบขนาน : สำหรับความต้านทาน n แบบขนาน: ผล = 1 / (1 / R1 + 1 / R2 …

14
วงเล็บลำดับตามลำดับคำในพจนานุกรม
ท้าทายถ่ายจากที่นี่และที่นี่ด้วย nลำดับวงเล็บประกอบด้วยn (และn ) s ลำดับวงเล็บที่ถูกต้องมีการกำหนดดังต่อไปนี้: คุณสามารถหาวิธีการลบวงเล็บ "()" ที่อยู่ติดกันได้ซ้ำจนกว่ามันจะว่างเปล่า ตัวอย่างเช่น(())เป็นวงเล็บที่ถูกต้องคุณสามารถลบคู่ในตำแหน่งที่ 2 และ 3 และมันจะกลายเป็น()แล้วคุณสามารถทำให้มันว่างเปล่า )()(ไม่ใช่วงเล็บที่ถูกต้องหลังจากที่คุณลบคู่ในตำแหน่งที่ 2 และ 3 มันจะกลายเป็น)(และคุณไม่สามารถลบอีกต่อไป งาน รับตัวเลขnคุณต้องสร้างลำดับวงเล็บที่ถูกต้องทั้งหมดตามลำดับพจนานุกรม เอาต์พุตสามารถเป็นอาร์เรย์รายการหรือสตริง (ในกรณีนี้คือลำดับต่อบรรทัด) คุณสามารถใช้คู่ที่แตกต่างกันของวงเล็บเช่น{}, [], ()หรือเข้าสู่ระบบเปิดปิดใด ๆ ตัวอย่าง n = 3 ((())) (()()) (())() ()(()) ()()() n = 2 (()) ()()

21
เปรียบเทียบสี่จำนวนเต็มส่งคืนคำตามค่าสูงสุด
ฟังก์ชั่นนี้จะนำปัจจัยสี่จำนวนเต็ม ( a, b, c, d) และกลับคำไบนารีขึ้นอยู่กับค่าเท่ากับสูงสุดของสี่ ค่าตอบแทนจะอยู่ระหว่างและ10xF ตัวอย่างเช่น: a = 6, b = 77, c = 1, d = 4 คืนค่า2(ไบนารี0010; มีการตั้งค่าบิตที่มีนัยสำคัญน้อยที่สุดเป็นอันดับที่สองที่สอดคล้องกับbค่าสูงสุดเพียงอย่างเดียว) a = 4, b = 5, c = 10, d = 10 คืนค่า0xC(ไบนารี1100; บิตที่มีนัยสำคัญน้อยที่สุดที่ 3 และ 4 ตั้งค่าให้สอดคล้องcและdเท่ากับค่าสูงสุด) a = 1, b = 1, c = 1, …

2
Python: วิธีที่สั้นที่สุดในการแทรกรายการจากสองรายการ
ฉันกำลังพยายามหาวิธีที่สั้นที่สุด (ตัวละครที่เป็นไปได้) เพื่อรับรายการ 3 รายการที่ 1 และรายการที่ 2 ได้รับมาให้ฉันเป็นอาร์กิวเมนต์แล้วและมีความยาวเท่ากัน l1 = [1, 2, 3, 4, 5] l2 = ['a', 'b', 'c', 'd', 'e'] และรายการ 3 ควรมีลักษณะ (ใช่ต้องเป็นรายการ): l3 = ['a', 1, 'b', 2, 'c', 3, 'd', 4, 'e', 5]

6
Codegolf Rainbow: การเรียงลำดับสีด้วยการสะท้อนแสง
บทนำ: หลังจากที่ฉันโพสต์ความท้าทายที่เกี่ยวข้องกับรุ้งสองประการ: Codegolf Rainbow: สนุกกับ Integer-Arrays 1และCodegolf Rainbow: วาดในสีดำและสีขาว 2ความคิดเห็นต่อไปนี้สร้างโดย@ChrisMใน ASCII ( วาดใน Black-and-White ) ความท้าทาย : บางทีคุณอาจรู้เรื่องนี้และมันก็เป็นไปตามการออกแบบ (ฉันรู้ว่ารุ้งกินน้ำไม่ใช่รูปสี่เหลี่ยมขนมเปียกปูนหรือ ascii เช่นกันและตำแหน่งที่สูงขึ้นของคำสั่งซื้อก็มีความซับซ้อนมากขึ้น) แต่สีในรุ้งที่ 2 ไม่ใช่หรือ และเขาก็พูดถูก เมื่อคุณเห็นรุ้งสองครั้งอันที่สองนั้นจริง ๆ เป็นภาพสะท้อนของแรกดังนั้นสีจะกลับ ด้วยรุ้งสามอันมันเป็นรุ้งคู่ที่แท้จริงโดยอันที่สามเป็นภาพสะท้อนของอีกอันหนึ่ง และด้วยสี่มีรุ้งสองตัวและสองเงาสะท้อนของมัน ดังนั้นขอความท้าทายที่สามโดยใช้ข้อเท็จจริงนั้น ท้าทาย: อินพุต: จำนวนเต็มบวกnซึ่งก็คือ>=2และรายการขนาด>= n+1เต็ม ผลลัพธ์: รายการเดียวกันได้รับคำสั่งดังนี้: ก่อนแยกรายการอินพุตในรายการย่อยของขนาดn(โดยที่รายการย่อยต่อท้ายอาจมีขนาดใดก็ได้ในช่วง[1,n]) จากนั้นเราจะทำสิ่งต่อไปนี้ตามจำนวนรายการย่อยm: เรียงลำดับm - m//2จำนวนย่อยแรกของรายการจากต่ำสุดไปสูงสุด (โดยที่//หารด้วยจำนวนเต็ม) (เช่นที่มี 6 รายการย่อยสามรายการแรกจะถูกจัดเรียงจากต่ำสุดไปสูงสุดด้วย 5 รายการย่อยรายการกำปั้นสามรายการจะเรียงลำดับจากต่ำสุดไปสูงสุด) เรียงลำดับm//2จำนวนย่อยสุดท้ายของรายการจากสูงสุดไปต่ำสุด (โดยที่//หารด้วยจำนวนเต็ม) …

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