คำถามติดแท็ก linear-algebra

สำหรับความท้าทายที่เกี่ยวข้องกับพีชคณิตเชิงเส้นคณิตศาสตร์ของปริภูมิเวกเตอร์และการแมปเชิงเส้นระหว่างพวกเขา

12
สร้างเมทริกซ์สหาย
คุณมีพหุนามจำนวนมากที่อ้างว้างดังนั้นทำให้พวกเขามีเพื่อนบางคน (ที่ไม่ขู่ว่าจะแทง)! สำหรับพหุนามของดีกรีnมีเมทริกซ์คิวบ์n by nคู่หูสำหรับมัน คุณต้องสร้างฟังก์ชั่นที่ยอมรับรายการค่าสัมประสิทธิ์สำหรับพหุนามทั้งจากน้อยไปหามาก ( ) หรือจากมากไปหาน้อย ( ) (แต่ไม่ใช่ทั้งคู่) และเอาท์พุทเมทริกซ์สหาย a + bx +cx^2 + …ax^n + bx^(n-1) + cx^(n-2)+… สำหรับพหุนามc0 + c1x + c2x^2 + ... + cn-1x^(n-1) + x^nเมทริกซ์คู่หูคือ (0, 0, 0, ..., -c0 ), (1, 0, 0, ..., -c1 ), (0, 1, 0, ..., …


9
พหุนามลักษณะ
พหุนามลักษณะเฉพาะของเมทริกซ์จัตุรัสถูกกำหนดให้เป็นพหุนามP (x) = det ( ฉัน x- ) ซึ่งผมเป็นเมทริกซ์เอกลักษณ์และdetปัจจัย โปรดทราบว่าคำจำกัดความนี้ให้พหุนาม monicกับเราเสมอว่าคำตอบนั้นมีเอกลักษณ์ งานของคุณสำหรับความท้าทายนี้คือการคำนวณค่าสัมประสิทธิ์ของพหุนามลักษณะสำหรับเมทริกซ์จำนวนเต็มสำหรับเรื่องนี้คุณอาจใช้บิวด์อิน แต่มันก็หมดกำลังใจ กฎระเบียบ input เป็นเมทริกซ์จำนวนเต็ม NxN (N ≥ 1) ในรูปแบบที่สะดวก โปรแกรม / ฟังก์ชั่นของคุณจะแสดงผล / คืนค่าสัมประสิทธิ์ไม่ว่าจะเพิ่มหรือลดลง (โปรดระบุว่า) สัมประสิทธิ์เป็นบรรทัดฐานที่สัมประสิทธิ์ของ x Nคือ 1 (ดูกรณีทดสอบ) คุณไม่จำเป็นต้องจัดการอินพุตที่ไม่ถูกต้อง Testcases สัมประสิทธิ์จะได้รับตามลำดับที่ลดลง (เช่น. x N , x N-1 , ... , x 2 , x, 1): [0] …

8
เมทริกซ์ตรีโกณมิติ
บทนำ ฟังก์ชันตรีโกณมิติที่พบมากที่สุดสองแบบsineและcosine(หรือsinและcosสำหรับระยะสั้น) สามารถขยายเป็นฟังก์ชันที่มีค่าเมทริกซ์ได้ วิธีหนึ่งในการคำนวณ analogs ที่มีค่าเมทริกซ์มีดังนี้: พิจารณาอัตลักษณ์ตรีโกณมิติที่สำคัญสองประการนี้: การใช้ข้อมูลเฉพาะตัวเหล่านี้เราสามารถหาสมการต่อไปนี้sinและcos: ชี้แจงเมทริกซ์ที่มีอยู่สำหรับตารางการฝึกอบรมทั้งหมดและจะได้รับโดย: ที่0เป็นตัวตนของเมทริกซ์ฉันมีขนาดเดียวกับ โดยใช้เมทริกซ์เอ็กซ์โปเนนเชียลฟังก์ชันตรีโกณมิติทั้งสอง (และฟังก์ชันตรีโกณมิติอื่นทั้งหมด) สามารถประเมินเป็นฟังก์ชันของเมทริกซ์ ความท้าทาย กำหนดตารางเมทริกซ์ออกค่าของและsin(A)cos(A) กฎระเบียบ อินพุตและเอาต์พุตอาจอยู่ในรูปแบบที่สะดวกและเหมาะสม (อาร์เรย์ 2 มิติรูปแบบเมทริกซ์ของภาษาของคุณ ฯลฯ ) คุณสามารถเขียนโปรแกรมเดียวสองโปรแกรมอิสระฟังก์ชั่นเดียวหรือสองฟังก์ชั่น หากคุณเลือกที่จะเขียนสองฟังก์ชันรหัสอาจถูกใช้ร่วมกันระหว่างพวกเขา (เช่นการนำเข้าและฟังก์ชั่นผู้ช่วย) ค่าของเมทริกซ์อินพุตจะเป็นจำนวนเต็มเสมอ วิธีแก้ไขปัญหาของคุณอาจมีปัญหาความแม่นยำเนื่องจากการกำหนดจุดลอยตัว หากภาษาของคุณมีค่าความแม่นยำไร้ขีด จำกัด อย่างน่าอัศจรรย์โซลูชันของคุณควรทำงานได้อย่างสมบูรณ์แบบ (ไม่สนใจข้อเท็จจริงที่ว่าต้องใช้เวลาและ / หรือหน่วยความจำไม่ จำกัด ) อย่างไรก็ตามเนื่องจากค่าความแม่นยำไม่มีที่สิ้นสุดวิเศษเหล่านั้นไม่มีอยู่ความไม่ถูกต้องที่เกิดจากความแม่นยำที่ จำกัด จึงเป็นที่ยอมรับได้ กฎนี้มีไว้เพื่อหลีกเลี่ยงภาวะแทรกซ้อนที่เกิดจากการกำหนดจำนวนความแม่นยำเฉพาะในผลลัพธ์ ไม่อนุญาตให้สร้างฟังก์ชันตรีโกณมิติตรีโกณมิติสำหรับเมทริกซ์อาร์กิวเมนต์ (รวมถึงฟังก์ชั่นไฮเปอร์โบลิกตรีโกณมิติ) เมทริกซ์บิวด์อินอื่น ๆ (เช่นการคูณการยกกำลังเส้นทแยงมุมการสลายตัวและเมทริกซ์เลขชี้กำลัง) ได้รับอนุญาต กรณีทดสอบ รูปแบบ: A -> sin(A), …

13
ผลิตภัณฑ์ Fibonacci
คุณสามารถแยกตัวเลขที่มากกว่า 0 เป็นผลรวมที่ไม่ซ้ำกันของตัวเลขฟีโบนักชีบวก ในคำถามนี้เราทำได้โดยการลบจำนวนฟีโบนัชชีบวกที่ใหญ่ที่สุดซ้ำไปซ้ำมา เช่น: 1 = 1 2 = 2 3 = 3 4 = 3 + 1 12 = 8 + 3 + 1 13 = 13 100 = 89 + 8 + 3 ตอนนี้ฉันเรียกผลิตภัณฑ์ Fibonacciว่าเป็นรายการเดียวกันกับข้างบน แต่ด้วยการเพิ่มถูกแทนที่ด้วยการคูณ ตัวอย่างเช่นf(100) = 89 * 8 * 3 = 2136. เขียนโปรแกรมหรือฟังก์ชั่นที่ให้จำนวนเต็มบวกnส่งคืนผลคูณของฟีโบนักชีของตัวเลขนั้น Testcases: …
13 code-golf  math  sequence  fibonacci  code-golf  word  code-golf  cipher  code-golf  string  math  subsequence  code-golf  regular-expression  code-golf  brainfuck  assembly  machine-code  x86-family  code-golf  math  factorial  code-golf  math  geometry  code-golf  math  arithmetic  array-manipulation  math  number  optimization  stack  metagolf  code-golf  tips  assembly  code-golf  tips  lisp  code-golf  number-theory  path-finding  code-golf  number  sequence  generation  code-golf  math  geometry  code-golf  grid  permutations  code-golf  code-golf  graphical-output  geometry  fractal  knot-theory  code-golf  math  arithmetic  code-golf  interpreter  balanced-string  stack  brain-flak  code-golf  math  set-theory  code-golf  math  array-manipulation  code-golf  code-golf  string  natural-language  code-golf  code-golf  math  linear-algebra  matrix  code-golf  string  encode 

8
คำนวณ Hafnian โดยเร็วที่สุด
ความท้าทายคือการเขียนรหัสที่เร็วที่สุดที่เป็นไปได้สำหรับการคำนวณHafnian ของเมทริกซ์ Hafnian ของเมทริกซ์สมมาตร - 2nโดย - 2nเมทริกซ์Aหมายถึง: นี่ S 2nหมายถึงชุดของพีชคณิตทั้งหมดของจำนวนเต็มจาก1การที่เป็น2n[1, 2n] ลิงก์วิกิพีเดียยังมีสูตรการค้นหาที่แตกต่างกันซึ่งอาจเป็นที่สนใจ หน้า wiki เดียวกันพูดถึงการฝึกหัด adjacency แต่รหัสของคุณควรใช้กับเมทริกซ์อื่นเช่นกัน คุณสามารถสันนิษฐานได้ว่าค่าทั้งหมดจะเป็นจำนวนเต็ม แต่ไม่ใช่ว่าเป็นค่าบวกทั้งหมด นอกจากนี้ยังมีอัลกอริทึมที่เร็วขึ้น แต่ดูเหมือนจะเข้าใจยาก และ Christian Sievers เป็นคนแรกที่นำไปใช้ (ใน Haskell) ในเมทริกซ์คำถามนี้ทุกสแควร์และสมมาตรมีขนาดเท่ากัน การใช้งานอ้างอิง (โปรดทราบว่านี่ใช้วิธีที่ช้าที่สุด) นี่คือตัวอย่างโค้ดไพ ธ อนจาก Mr. Xcoder from itertools import permutations from math import factorial def hafnian(matrix): my_sum = 0 n …

3
พหุนามอ้างอิงตนเอง
ทุกระดับให้nมันเป็นไปได้ที่จะสร้าง (อย่างน้อยหนึ่ง) ความสำคัญพหุนามpดังกล่าวว่าp(k)( pการประเมินในk) เป็นค่าสัมประสิทธิ์ของคำในพหุนามทั้งหมดx^k 0 <= k <= nเพื่อให้มีความโดดเด่นเราต้องการให้สัมประสิทธิ์นำ (สัมประสิทธิ์ของx^n) เป็นค่าบวกและค่าน้อยที่สุด มีหลายชื่อเหล่านี้มีคุณสมบัติที่น่าสนใจบางอย่างคุณสามารถพบการอ้างอิงบางส่วนในหัวข้อที่เป็นแรงบันดาลใจให้ผมทำความท้าทายนี้ นอกจากนี้คุณยังสามารถค้นหาชื่อพหุนามได้ที่https://oeis.org/A103423 หนึ่งในคุณสมบัติที่ไม่คาดคิดมาก่อนคือการทำงานของรากขึ้นอยู่กับn: แหล่งที่มา (โดย / u / zorngov และ / u / EpicSauceSc2) งาน กำหนดnเอาท์พุทจำนวน nonnegative เอาท์พุทพหุนามสมบูรณ์ของการอ้างอิงระดับnด้วยสัมประสิทธิ์นำน้อยที่สุด รายละเอียด เอาท์พุทสามารถในรูปแบบที่สามารถอ่านได้ของมนุษย์เป็นสตริงหรือยังเป็นรายการของค่าสัมประสิทธิ์x^2-x-1 [1,-1,-1](ลำดับของสัมประสิทธิ์ยังสามารถเป็นวิธีอื่น ๆ ได้ก็ต้องสอดคล้องกัน) เอาต์พุตสองสามตัวแรก n=0: 1 n=1: x n=2: x^2-x-1 n=3: 10*x^3-29*x^2-6*x+19 n=4: 57*x^4-325*x^3+287*x^2+423*x-19 n=5: 12813*x^5-120862*x^4+291323*x^3+44088*x^2-355855*x-227362

4
แก้สมการเชิงเส้น
ความท้าทายนี้แต่ด้วยสเป็คที่ดีกว่า สเป็ค โปรแกรมของคุณจะใช้สมการเชิงเส้นที่มีตัวแปรเดียวและเอาท์พุทค่าของxx อินพุต / แยกวิเคราะห์ ข้อมูลที่ป้อนจะมีเฉพาะตัวเลขตัวดำเนินการวงเล็บ ( ()) xและ=เครื่องหมาย (ซึ่งหมายความว่าไม่มีช่องว่าง) วงเล็บจะมีความสมดุลเสมอ จะต้องมีอย่างน้อย 1 xเสมอ xอาจจะนำหน้าด้วยตัวเลข สมการทั้งหมดจะมีผลลัพธ์เดียว จำนวนสามารถกำหนดได้โดยทำตามขั้นตอนเหล่านี้ จำนวนสามารถกำหนดได้โดย regex -?(\d+(\.\d+)?|\.\d+)นี้: หากคุณไม่ได้พูด regex: ตัวเลขถูกกำหนดเป็น 0-9 มันอาจจะมี-จุดเริ่มต้นของมันหมายถึงเชิงลบ จากนั้นอาจมีตัวเลขบางตัว หากไม่ใช่ตัวเลขใด ๆ จะมีจุดทศนิยม หากจุดทศนิยมมีอยู่อย่างน้อยหนึ่งหลักจะตามมา จำนวน / มูลค่าที่ใหญ่ที่สุดจะถูกกำหนดโดยความสามารถของภาษาของคุณ ประกอบการใด ๆ ของ: +-*/พวกเขามักจะปรากฏระหว่างตัวเลขและหรือวงเล็บ วิธี(5)(5)นี้ไม่ได้เป็นอินพุตที่ถูกต้องเพื่อประโยชน์ของความเรียบง่าย วงเล็บจะมีนิพจน์ที่ถูกต้องเสมอ (การรวมตัวเลขและ / หรือโอเปอเรเตอร์ที่ถูกต้อง) ไว้ภายใน เครื่องหมายวงเล็บแบบ "สมดุล" ถูกกำหนดเนื่องจากทุกคน(จะมีการปิดที่เกี่ยวข้อง) การประเมินผล ควรปฏิบัติตามลำดับของการดำเนินการและลำดับความสำคัญคือ (สูงสุดไปต่ำสุด): …

4
ช่วยคำนวณตัวแทนของคุณอีกครั้ง!
สองสามเดือนที่ผ่านมาเราได้อภิปรายเกี่ยวกับเมตาดาต้าเกี่ยวกับการเพิ่มชื่อเสียงที่ได้รับจากการโหวตคำถาม นี่คือพื้นฐานของระบบชื่อเสียงของเราในปัจจุบันสำหรับการลงคะแนน: 1 การโหวตคำถามUมีค่า 5 ชื่อเสียง คำตอบ upvote uมีค่า 10 ชื่อเสียง คำถามหรือคำตอบ downvote dมีค่า -2 ชื่อเสียง มีข้อเสนอแนะที่แตกต่างกันมากมายสำหรับระบบใหม่ แต่ปัจจุบันได้รับความนิยมมากที่สุดเหมือนกับข้างต้น แต่มี upvotes คำถามปรับสัดส่วนเป็น +10 ตัวแทน ความท้าทายนี้เกี่ยวกับการคำนวณจำนวนตัวแทนที่คุณจะได้รับหากใช้ระบบนี้ ลองดูตัวอย่าง หากกิจกรรมการลงคะแนนเป็นUUUUuuuuUUUUUduuudUUเช่นนั้นคุณจะได้รับ 121 ภายใต้ระบบปัจจุบัน: U x 4 x 5 = 20 = 20 u x 4 x 10 = 40 = 60 U x 5 x …

4
ทวีคูณเปาลีเมทริกซ์
เมทริกซ์ Pauliเป็นชุดของ 2x2 เมทริกซ์ที่ปรากฏบ่อยมากในฟิสิกส์ควอนตัม (ไม่คุณไม่จำเป็นต้องรู้ฟิสิกส์ควอนตัมใด ๆ สำหรับความท้าทายนี้) ถ้าเรารวมตัวตนในเซตเมทริกซ์ทั้งสี่คือ: σ0 = σ1 = σ2 = σ3 = [1 0] [0 1] [0 -i] [1 0] [0 1] [1 0] [i 0] [0 -1] คูณสองเหล่านี้มักจะให้อีกเมทริกซ์ Pauli แม้ว่ามันอาจจะคูณด้วยหนึ่งในขั้นตอนที่ซับซ้อน1, i, ,-1 ยกตัวอย่างเช่น-iσ1σ3 = -iσ2 งานของคุณคือการคูณเมทริกซ์ Pauli จำนวนหนึ่งและส่งกลับเมทริกซ์และเฟสผลลัพธ์ การป้อนข้อมูลจะได้รับเป็นสตริงที่ไม่ว่างเปล่าของตัวเลข0ที่จะ3เป็นตัวแทนของการฝึกอบรมเพื่อ เอาท์พุทควรจะเป็นสตริงที่มีหลักเดียวสำหรับเมทริกซ์ที่เกิดขึ้นนำโดยเลือก, หรือเพื่อระบุเฟส ( สำหรับ)σ0σ3i--i--1 คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่น, รับอินพุตผ่าน …

8
ค่าลักษณะเฉพาะของเมทริกซ์
รับตารางเมทริกซ์, ส่งออกค่าลักษณะเฉพาะของเมทริกซ์ ค่าลักษณะเฉพาะแต่ละค่าควรทำซ้ำหลาย ๆ ครั้งเท่ากับพีชคณิตหลายหลาก ค่าลักษณะเฉพาะของเมทริกซ์Aเป็นค่าสเกลาλดังกล่าวว่าสำหรับเวกเตอร์คอลัมน์บาง,v A*v = λ*vพวกเขายังเป็นคำตอบสำหรับพหุนามลักษณะของA: det(A - λ*I) = 0( Iเมทริกซ์เอกลักษณ์ที่มีมิติเดียวกันกับที่A) ผลลัพธ์จะต้องมีความถูกต้องถึง 3 หลักที่สำคัญ อินพุตและเอาต์พุตทั้งหมดจะอยู่ในช่วงของค่าตัวเลขสำหรับภาษาที่คุณเลือก บิลด์อินเป็นที่ยอมรับ แต่คุณได้รับการสนับสนุนให้รวมโซลูชันที่ไม่ได้ใช้บิวอิน กรณีทดสอบ ในกรณีทดสอบเหล่านี้Iแสดงถึงหน่วยจินตภาพ a + b*Iตัวเลขที่ซับซ้อนมีการเขียนในรูปแบบ เอาต์พุตทั้งหมดมี 3 หลักที่มีความแม่นยำ [[42.0]] -> [42.0] [[1.0, 0.0], [0.0, 1.0]] -> [1.00, 1.00] [[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]] -> [16.1, …

4
แก้สมการเมทริกซ์ด้วยวิธีของ Jacobi (แก้ไข)
พื้นหลังทางคณิตศาสตร์ ให้ A เป็นเมทริกซ์ N คูณ N ของจำนวนจริง, เวกเตอร์ ba ของจำนวนจริง N และเวกเตอร์ xa N ไม่ทราบจำนวนจริง สมการเมทริกซ์คือ Axe = b วิธีการของ Jacobi มีดังต่อไปนี้: ย่อยสลาย A = D + R โดยที่ D คือเมทริกซ์ของเส้นทแยงมุมและ R คือรายการที่เหลือ หากคุณสร้างโซลูชันเดาเริ่มต้น x0 โซลูชันที่ได้รับการปรับปรุงคือ x1 = inverse (D) * (b - Rx) โดยการคูณทั้งหมดเป็นการคูณเมทริกซ์เวกเตอร์และอินเวอร์ส (D) เป็นเมทริกซ์ผกผัน ข้อกำหนดของปัญหา อินพุต …

7
คำนวณผลิตภัณฑ์ Kronecker
ที่เกี่ยวข้องแต่แตกต่างกันมาก ในตัวอย่างด้านล่างAและBจะเป็นเมทริกซ์แบบ 2 ต่อ 2 และเมทริกซ์จะถูกจัดทำดัชนีแบบหนึ่ง Kronecker ผลิตภัณฑ์มีคุณสมบัติดังต่อไปนี้: A⊗B = A(1,1)*B A(1,2)*B A(2,1)*B A(2,2)*B = A(1,1)*B(1,1) A(1,1)*B(1,2) A(1,2)*B(1,1) A(1,2)*B(1,2) A(1,1)*B(2,1) A(1,1)*B(2,2) A(1,2)*B(2,1) A(1,2)*B(2,2) A(2,1)*B(1,1) A(2,1)*B(1,2) A(2,2)*B(1,1) A(2,2)*B(1,2) A(2,2)*B(2,1) A(2,2)*B(1,2) A(2,2)*B(2,1) A(2,2)*B(2,2) ถาม: ได้รับสองเมทริกซ์AและผลตอบแทนBA⊗B 1-by-1ขนาดของการฝึกอบรมจะมีอย่างน้อย ขนาดสูงสุดจะเป็นสิ่งที่คอมพิวเตอร์ / ภาษาของคุณสามารถจัดการได้ตามค่าเริ่มต้น แต่การ5-by-5ป้อนข้อมูลขั้นต่ำ ค่าอินพุตทั้งหมดจะเป็นจำนวนเต็มไม่ใช่ค่าลบ ไม่อนุญาตให้ใช้ฟังก์ชันแบบ Builtin ที่คำนวณผลิตภัณฑ์ Kronecker หรือTensor / Outer โดยทั่วไป: กฎมาตรฐานที่เกี่ยวข้องกับรูปแบบ I / …

3
แก้ไข 2x Eigensystem
สำหรับผู้ที่มีพื้นหลังพีชคณิตเชิงเส้นเล็ก ๆ ความท้าทายนั้นง่ายเหมือนนี้: กำหนดค่าลักษณะเฉพาะและค่าลักษณะเฉพาะของเมทริกซ์ 2x2 ที่ซับซ้อน คุณอาจข้ามไปข้างหน้ารายละเอียด The Challenge for I / O เป็นต้นสำหรับผู้ที่ต้องการทบทวนระบบ eigens ให้อ่านต่อ พื้นหลัง สมลักษณะของเมทริกซ์ถูกกำหนดโดย det| A - λI | = 0 โดยที่λเป็นพารามิเตอร์ที่ซับซ้อน (สเกลาร์) ฉันเป็นเมทริกซ์เอกลักษณ์และเดช | ... | เป็นปัจจัย ด้านซ้ายมือจะประเมินพหุนามในλซึ่งเป็นพหุนามลักษณะซึ่งเป็นกำลังสองในกรณีของเมทริกซ์ 2x2 การแก้สมการลักษณะนี้เป็นลักษณะเฉพาะของซึ่งเราจะแสดงเป็นλ 1และλ 2 ตอนนี้eigenvectors v ฉันของความพึงพอใจ A vi = λi vi สำหรับแต่ละλ iนี่จะให้ระบบสมการสองอันในสองสิ่งที่ไม่รู้จัก (ส่วนประกอบของv i ) …

13
ผลิตภัณฑ์ Dot ของ Diagonals
ความท้าทายนี้ง่ายมาก คุณได้รับเป็นอินพุตเมทริกซ์จตุรัสซึ่งแสดงด้วยวิธีใด ๆ ที่มีสติและคุณต้องส่งออกผลคูณดอทของเส้นทแยงมุมของเมทริกซ์ เส้นทแยงมุมที่เฉพาะเจาะจงคือการวิ่งแนวทแยงมุมจากซ้ายไปขวาล่างและจากบนขวาไปซ้ายล่าง กรณีทดสอบ [[-1, 1], [-2, 1]] -> -3 [[824, -65], [-814, -741]] -> 549614 [[-1, -8, 4], [4, 0, -5], [-3, 5, 2]] -> -10 [[0, -1, 0], [1, 0, 2], [1, 0, 1]] -> 1

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