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

ผู้ชนะของความท้าทายรหัสที่เร็วที่สุดจะถูกกำหนดโดยประสิทธิภาพรันไทม์ของการส่ง เพื่อความเป็นธรรมการส่งผลงานทั้งหมดควรจะถูกทำเครื่องหมายบนเครื่องเดียวกันซึ่งโดยทั่วไปหมายถึงการส่งผลงานทั้งหมดจะต้องได้รับการทดสอบโดยโฮสต์ของการท้าทาย สำหรับการให้คะแนนโดยความซับซ้อนของเวลาแบบเชิงเส้นให้ใช้ [อัลกอริทึมเร็วที่สุด] แทน

3
ค้นหาวิธีแก้ปัญหาทั้งหมดของปริศนาตัวเลขนี้ในเวลาที่สั้นที่สุด
ประวัติศาสตร์ บริษัท ของฉันส่งจดหมายข่าวรายสัปดาห์ให้กับทุกคนภายใน บริษัท รวมอยู่ในจดหมายข่าวเหล่านี้เป็นปริศนาพร้อมกับตะโกนให้คนใน บริษัท เป็นคนแรกที่ส่งอีเมล / ให้บริการแก้ปัญหาลับสมองของสัปดาห์ก่อน ปริศนาเหล่านี้ส่วนใหญ่ค่อนข้างน่าเบื่อและค่อนข้างน่าเบื่อสำหรับ บริษัท เทคโนโลยี แต่มีหนึ่งเดือนหลายเดือนหลังที่ดึงดูดความสนใจของฉัน ปริศนาดั้งเดิม: รับรูปร่างด้านล่าง: คุณมีตัวเลขธรรมชาติตั้งแต่ 1 ถึง 16 พอดีกับพวกเขาทั้งหมดเป็นรูปร่างนี้เช่นที่แถวที่ต่อเนื่องกันและคอลัมน์ที่อยู่ติดกันรวมกันได้ถึง 29 ตัวอย่างเช่นทางออกหนึ่งของปริศนานี้ (ซึ่งเป็นโซลูชัน "บัญญัติ" ที่ฉันส่งไปยังจดหมายข่าว) มีดังต่อไปนี้: อย่างไรก็ตามในการแก้ปัญหาฉันพบข้อมูลที่น่าสนใจบ้าง: มีวิธีแก้ปัญหามากกว่าแค่นั้น ในความเป็นจริงมี 9,368 โซลูชั่น หากคุณขยายชุดกฎเพื่อกำหนดให้แถวและคอลัมน์เท่ากับกันไม่จำเป็นต้องเป็น 29 คุณจะได้รับ 33,608 โซลูชัน: 4,440 โซลูชั่นรวมเป็น 27 7,400 โซลูชั่นรวมเป็น 28 9,368 โซลูชั่นรวมเป็น 29 6,096 โซลูชั่นรวมเป็น 30 5,104 โซลูชั่นรวมเป็น …

3
ผู้เล่นที่เร็วที่สุดสำหรับจุดและกล่อง
ความท้าทายคือการเขียนแก้สำหรับคลาสสิกเกมดินสอและกระดาษจุดและกล่อง รหัสของคุณควรใช้จำนวนเต็มสองจำนวนmและใช้nเป็นอินพุตซึ่งระบุขนาดของกระดาน เริ่มต้นด้วยจุดที่ว่างเปล่าของตารางผู้เล่นผลัดกันเพิ่มเส้นแนวนอนหรือแนวตั้งเดียวระหว่างจุดที่อยู่ติดกันสองจุด ผู้เล่นที่จบด้านที่สี่ของกล่อง 1 × 1 จะได้รับหนึ่งแต้มและเปลี่ยนอีกหนึ่งรอบ (โดยทั่วไปจะมีการบันทึกคะแนนโดยการวางเครื่องหมายในกล่องของผู้เล่นเช่นการเริ่มต้น) เกมจะจบลงเมื่อไม่สามารถวางสายได้อีก ผู้ชนะของเกมคือผู้เล่นที่มีคะแนนมากที่สุด คุณสามารถคิดว่าอย่างใดอย่างหนึ่งn = mหรือn = m - 1และmอย่างน้อย 2 ความท้าทายคือsolveเกม Dots and Boxes ที่ใหญ่ที่สุดที่เป็นไปได้ภายในไม่กี่นาที n*mขนาดของเกมเป็นเพียง การส่งออกของรหัสของคุณควรจะเป็นwin, drawหรือloseที่ควรจะเป็นผลสำหรับผู้เล่นคนแรกสมมติว่าผู้เล่นทั้งสองเล่นได้อย่างดีที่สุด รหัสของคุณจะต้องคอมไพล์ได้ / รันได้บน Ubuntu โดยใช้เครื่องมือที่ติดตั้งได้ง่ายและฟรี กรุณารายงานคะแนนของคุณเป็นพื้นที่ที่ใหญ่ที่สุดที่คุณสามารถแก้ไขได้ในคอมพิวเตอร์ของคุณใน 1 นาทีพร้อมกับเวลา จากนั้นฉันจะทดสอบโค้ดบนคอมพิวเตอร์ของฉันและทำอันดับของรายการที่เรียงลำดับ ในกรณีที่มีการเสมอกันผู้ชนะจะเป็นรหัสที่เร็วที่สุดบนกระดานขนาดใหญ่ที่สุดซึ่งสามารถแก้ไขได้ภายในไม่กี่นาที มันจะดีกว่าถ้ารหัสเอาท์พุทไม่เพียง แต่ชนะหรือแพ้ แต่ยังให้คะแนนจริงเช่นกัน ทำให้การตรวจสติถูกต้อง

5
การคำนวณแบบเร่งด่วน
การคำนวณตรีโกณมิติอย่างรวดเร็ว งานของคุณคือการสร้างโปรแกรมที่สามารถคำนวณไซน์, โคไซน์และแทนเจนต์ของมุมเป็นองศา กฎระเบียบ ไม่มีฟังก์ชั่นตรีโกณมิติในตัว (ไม่ได้แยกเป็นสองส่วน, โคเซแคนต์และโคแทนเจนต์หากภาษาของคุณมี) คุณอาจใช้ตารางการค้นหา แต่ขนาดรวมของพวกเขาจะต้องไม่เกิน 3000 สมาชิก (สำหรับการดำเนินการทั้งสามรวมกัน) กรุณาทำให้มันอ่านตารางจากไฟล์ (เช่นtrig.lookup) ดังนั้นพวกเขาจึงไม่สับสนรหัส ไม่มีการเข้าถึงเครือข่าย คุณต้องปัดเศษผลลัพธ์ของคุณอย่างถูกต้องตามที่อธิบายไว้ด้านล่าง อย่าใช้พื้นหรือเพดาน คุณอาจใช้วิธีการใด ๆ ในการคำนวณค่าเช่นเศษส่วนต่อเนื่องตราบใดที่มันถูกต้องถึง 7 ตัวเลขที่มีนัยสำคัญ รหัสของคุณต้องสามารถกำหนดเวลาเองได้ ไม่รวมการดำเนินการของไฟล์ I / O จากเวลาของคุณ - ดังนั้นเพียงแค่เวลาฟังก์ชั่นที่ทำตรีโกณมิติและการปัดเศษ ฉันจะต้องสามารถเรียกใช้รหัสของคุณ โปรดโพสต์ลิงก์ไปยังคอมไพเลอร์ / ล่ามที่พร้อมใช้งานได้อย่างอิสระและให้คำแนะนำที่จำเป็นในการรวบรวม / เรียกใช้โค้ด (เช่นตัวเลือกใดที่จะส่งผ่านไปยัง GCC) ช่องโหว่มาตรฐานใช้ รูปแบบอินพุต อ่านจากไฟล์ที่เรียกว่าtrig.inถ้าภาษาของคุณไม่รองรับไฟล์ I / O มุมอยู่ระหว่าง 0 ถึง 360 ข้อมูลที่ป้อนจะประกอบด้วยมุมสิบตัวเลขสำคัญในหน่วยทศนิยมคั่นด้วยบรรทัดใหม่ …

3
ลำดับ Game-of-Life ที่ไม่ซ้ำกันนานที่สุด
รับจำนวนเต็มบวก N กำหนดรูปแบบเริ่มต้นบน N x N- กริดที่ให้ลำดับที่ไม่ซ้ำกันที่ยาวที่สุดภายใต้ Game of Life-rules และสิ้นสุดด้วยรูปแบบคงที่ (วงจรความยาว 1) เล่นบนพรู เป้าหมายไม่ใช่โปรแกรมที่สั้นที่สุด แต่เร็วที่สุด เนื่องจากโลกนี้มีขอบเขต จำกัด ในที่สุดคุณก็จะจบลงด้วยการวนซ้ำดังนั้นจึงเป็นรัฐที่เยี่ยมชมแล้วซ้ำอีก หากการวนซ้ำนี้มีระยะเวลา 1 รูปแบบเริ่มต้นจะเป็นตัวเลือกที่ถูกต้อง เอาต์พุต: รูปแบบเริ่มต้นและจำนวนรวมของสถานะที่ไม่ซ้ำกันในลำดับ (รวมถึงรูปแบบเริ่มต้น) ตอนนี้ 1x1-torus เป็นพิเศษเนื่องจากเซลล์อาจถูกพิจารณาว่าอยู่ใกล้เคียงกับตัวเองหรือไม่ แต่ในทางปฏิบัติไม่มีปัญหาเซลล์ที่มีชีวิตเดียวจะตายในกรณีใดกรณีหนึ่ง ดังนั้นอินพุต 1 ให้ผลตามลำดับความยาว 2 ลำดับเป็นหนึ่งเซลล์ที่มีชีวิตจากนั้นก็ตายไปตลอดกาล แรงจูงใจสำหรับคำถามนี้คืออนาล็อกของฟังก์ชันบีเวอร์ที่วุ่นวาย แต่มีความซับซ้อนน้อยกว่าเนื่องจากเรามีความจำที่ จำกัด นี่จะเป็นลำดับที่ดีที่จะรวมไว้ใน OEIS เช่นกัน สำหรับ N = 3 ความยาวของลำดับคือ 3 รูปแบบใด ๆ บนด้านซ้ายมือถึงพื้นที่สี่เหลี่ยมจัตุรัสสีดำสนิทขนาด 3x3 …

30
สร้างโปรแกรม Parrot
รับอินพุต, เอาต์พุตที่อินพุตตามด้วย newline ไม่รู้จบ ข้อมูลที่ป้อนจะเป็นสตริงที่ประกอบด้วยอักขระ ASCII ที่พิมพ์ได้ ( 0x20-0x7E) และบรรทัดใหม่ ( 0x0A) หากอินพุตมีความยาว 0 ให้ส่งบรรทัดใหม่อย่างไม่สิ้นสุด นี่คือโค้ดกอล์ฟที่มีจำนวนน้อยที่สุดในแต่ละภาษาที่ชนะ!
15 code-golf  string  sequence  combinatorics  fastest-code  number  code-challenge  restricted-source  rosetta-stone  code-golf  arithmetic  decision-problem  integer  factorial  code-golf  arithmetic  decision-problem  integer  bitwise  code-golf  kolmogorov-complexity  code-golf  tips  vim  code-golf  quine  code-generation  code-golf  string  restricted-source  code-golf  string  random  unicode  code-golf  audio  code-golf  ascii-art  code-golf  decision-problem  code-golf  puzzle-solver  code-golf  restricted-source  code-golf  kolmogorov-complexity  permutations  hexagonal-grid  code-golf  string  math  combinatorics  fastest-code  code-golf  restricted-source  code-golf  string  code-golf  arithmetic  code-golf  math  number  code-golf  string  decision-problem  balanced-string  code-golf  binary  code-golf  string  number  code-challenge  restricted-source  code-golf  ascii-art  printable-ascii  interactive  code-golf  string  ascii-art  code-challenge  restricted-source  source-layout  code-golf  arithmetic  tips  functional-programming  golfing-language  code-golf  binary  encryption 

8
อินทิกรัสามเหลี่ยมและอินทิกรัลอินทิกรัล
พิจารณาABCสามเหลี่ยมที่แต่ละด้านมีความยาวเต็ม ( สามเหลี่ยมหนึ่ง ) กำหนดค่ามัธยฐานของABCให้เป็นส่วนของเส้นตรงจากจุดสุดยอดไปจนถึงจุดกึ่งกลางของฝั่งตรงข้าม ในภาพด้านล่างส่วนของเส้นสีแดงแสดงถึงค่ามัธยฐาน โปรดทราบว่าสามเหลี่ยมใด ๆ ที่ระบุมีค่ามัธยฐานสามค่า ให้nเป็นจำนวนเต็มบวก มีอินทิกรัลไม่รูปสามเหลี่ยมจำนวนกี่ตัวที่มีความยาวด้านละน้อยกว่าหรือเท่ากับnมีค่ามัธยฐานอินทิกรัลอย่างน้อยหนึ่งค่า ท้าทาย จงเขียนโปรแกรมเพื่อคำนวณจำนวนสามเหลี่ยมหนึ่งที่มีค่ามัธยฐานหนึ่งอย่างน้อยหนึ่งสำหรับกำหนดความยาวสูงสุดด้านn คำสั่งของความยาวด้านนั้นไม่สำคัญเช่น <6,6,5> แสดงถึงสามเหลี่ยมเดียวกันกับ <5,6,6> และควรนับเพียงครั้งเดียว ยกเว้นรูปสามเหลี่ยมที่เสื่อมสภาพเช่น <1,2,3> เกณฑ์การให้คะแนน n ที่ใหญ่ที่สุดซึ่งโปรแกรมของคุณสามารถสร้างจำนวนสามเหลี่ยมใน60 วินาทีในเครื่องของฉันคือคะแนนของคุณ โปรแกรมที่มีคะแนนสูงสุดจะเป็นผู้ชนะ เครื่องของฉันคือ Sony Vaio SVF14A16CLB, Intel Core i5, 8GB RAM ตัวอย่าง ให้T ( N ) เป็นโปรแกรมที่มีการป้อนข้อมูลN T(1) = 0 T(6) = 1 T(20) = 27 T(22) …

5
เรียงลำดับที่เร็วที่สุดใน BrainF ***
หลังจากนำQuickSortมาใช้ใน BrainF ***ฉันรู้ว่าอาจไม่รวดเร็วเท่านี้ การดำเนินการที่เป็น O (1) ในภาษาปกติ (เช่นการจัดทำดัชนีแถวลำดับ) นั้นยาวกว่าใน BF อย่างมาก กฎส่วนใหญ่สำหรับสิ่งที่ทำให้การเรียงลำดับที่มีประสิทธิภาพสามารถโยนออกไปนอกหน้าต่างเมื่อคุณกำลังเขียนโค้ดในTuring tarpit ดังนั้นนี่คือความท้าทายในการใช้ "การเรียงลำดับสมองที่เร็วที่สุด *** ฉันจะจับเวลารายการทั้งหมดโดยใช้ล่ามด้านล่าง ผู้บุกรุกใช้เทป 16K ของอักขระที่ไม่ได้ลงนาม ทั้งเทปและเซลล์ห่อเมื่อขั้นสูง / เพิ่มขึ้นผ่านขีด จำกัด การอ่าน EOF จะใส่ 0 ในเซลล์ปัจจุบัน เวลาที่วัดได้รวมทั้งเวลาในการวิเคราะห์ไฟล์ต้นฉบับและเวลาในการประมวลผลไฟล์อินพุตทั้งหมด รหัสที่เร็วที่สุดชนะ เวกเตอร์ทดสอบจะเป็นชุดของไฟล์ Ascii ที่ออกแบบมาเพื่อทดสอบการเรียงตัวขอบกรณีรวมถึง รายการที่เรียงลำดับแล้ว: "สั่งแล้ว" !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ รายการที่เรียงกลับกัน: "ย้อนกลับ" ~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! ไฟล์ประกอบด้วยสำเนาที่ไม่ซ้ำกันหลายค่า: "onlynine" ibbkninbkrauickabcufrfckbfikfbbakninfaafafbikuccbariauaibiraacbfkfnbbibknkbfankbbunfruarrnrrrbrniaanfbruiicbuiniakuuiubbknanncbuanbcbcfifuiffbcbckikkfcufkkbbakankffikkkbnfnbncbacbfnaauurfrncuckkrfnufkribnfbcfbkbcrkriukncfrcnuirccbbcuaaifiannarcrnfrbarbiuk ไฟล์ ascii แบบสุ่มสมบูรณ์: "random" 'fQ`0R0gssT)70O>tP[2{9' 0.HMyTjW7-!SyJQ3]gsccR'UDrnOEK~ca 'KnqrgA3i4dRR8g.'JbjR;D67sVOPllHe,&VG"HDY_'Wi"ra?n.5nWrQ6Mac;&}~T_AepeUk{:Fwl%0`FI8#h]J/Cty-;qluRwk|S …

12
การค้นหาความสัมพันธ์โดยประมาณ
พิจารณาสตริงไบนารีของความยาวS nจัดทำดัชนีจาก1เราสามารถคำนวณระยะทาง Hammingระหว่างS[1..i+1]และS[n-i..n]ทั้งหมดiในการสั่งซื้อจากไป0 n-1ระยะห่างของ Hamming ระหว่างสองสายที่มีความยาวเท่ากันคือจำนวนตำแหน่งที่สัญลักษณ์ที่เกี่ยวข้องแตกต่างกัน ตัวอย่างเช่น, S = 01010 จะช่วยให้ [0, 2, 0, 4, 0]. เพราะนี่คือ0การแข่งขัน0, 01มี Hamming ระยะสองถึง10, 010การแข่งขัน010, 0101มี Hamming ระยะสี่1010 และในที่สุดก็01010ตรงกับตัวเอง เราสนใจเฉพาะผลงานที่ระยะทาง Hamming มากที่สุด 1 ดังนั้นในภารกิจนี้เราจะรายงานYว่าหากระยะทางของแฮมมิงอยู่ที่ระยะหนึ่งและเป็นNอย่างอื่น ดังนั้นในตัวอย่างข้างต้นเราจะได้ [Y, N, Y, N, Y] กำหนดf(n)ให้เป็นหมายเลขของอาร์เรย์ที่แตกต่างกันของYและNs หนึ่งได้รับเมื่อ iterating เหนือทุก2^nบิตสตริงที่แตกต่างกันไปได้ของความยาวSn งาน สำหรับการเพิ่มการnเริ่มต้นที่รหัสของคุณควรเอาท์พุท1f(n) ตัวอย่างคำตอบ สำหรับn = 1..24คำตอบที่ถูกต้องคือ: 1, 1, 2, 4, …

3
แสดงหมายเลขได้อย่างรวดเร็วด้วยการดำเนินการเพียงแค่ 0-9 และสี่อย่างรวมทั้งอีกอย่างหนึ่งที่เพิ่มขึ้น
คำอธิบาย Befungeเป็นโปรแกรมที่สองมิติที่ใช้สแต็ค นั่นหมายความว่าในการทำ 5 + 6 คุณเขียน56+ความหมาย: 56+ 5 push 5 into stack 6 push 6 into stack + pop the first two items in the stack and add them up, and push the result into stack (to those of you who do not know stacks, "push" just means add …

12
และทุกคนพูดว่า ...
วัตถุประสงค์รับอินพุตของข้อความที่ไม่มีอักขระ[หรือ]ดำเนินการต่อไปนี้: สำหรับทุกอินสแตนซ์ที่Amenมีอักษรตัวใหญ่อย่างน้อยหนึ่งตัว (ดังนั้นอินสแตนซ์ทั้งหมดของการAmenยกเว้นamen) ให้แสดงผลลัพธ์ที่เหมือนกันAmen(รักษาการใช้อักษรตัวพิมพ์ใหญ่) สำหรับทุก ๆ อินสแตนซ์ของ/all the people said[?: ]/i(นั่นคือนิพจน์ปกติ) ก็เอาท์พุทAmen(กรณีใด ๆ ก็ได้) หลังจากเอาต์พุตทุกตัวคุณสามารถเลือกตัวคั่นค่าคงที่เช่นบรรทัดใหม่เว้นวรรคหรืออะไรก็ได้ นี่คือรหัสกอล์ฟดังนั้นโปรแกรมที่สั้นที่สุดในหน่วยไบต์ชนะ ตัวอย่าง IOs Input: I said AMEN! AMEN, PEOPLE! Output: AMENAMEN ; any separator is fine, I choose none. Input: amen amen amen amen Output: ; nothing Input: ; empty Output: ; nothing Input: *blah …

7
ค้นหาดีเทอร์มิแนนต์สูงสุดสำหรับเมทริกซ์ Toeplitz แต่ละขนาด
สำหรับค่าคงที่ n ให้พิจารณาเมทริกซ์ n โดย n Toeplitzด้วยรายการที่เป็น 0 หรือ 1 จุดมุ่งหมายคือการค้นหาดีเทอร์มิแนนต์สูงสุดสำหรับเมทริกซ์ Toeplitz ทั้งหมด งาน สำหรับแต่ละnจาก 1 ขึ้นไปเอาท์พุทดีเทอร์มิแนนต์สูงสุดสำหรับเมทริกซ์ Toeplitz ทั้งหมดด้วยรายการซึ่งเป็น 0 หรือ 1 ควรมีเอาต์พุตหนึ่งตัวต่อnซึ่งควรมีดีเทอร์มิแนนต์สูงสุดและเมทริกซ์ตัวอย่างที่มาถึง คะแนน คะแนนของคุณใหญ่ที่สุดnรหัสของคุณไปถึงภายใน 2 นาทีบนคอมพิวเตอร์ของฉัน ชี้แจงน้อยรหัสของคุณสามารถทำงานเป็นเวลา 2 นาทีในทั้งหมดนี้ไม่ได้ 2 nนาทีต่อ เบรกเกอร์ หากสองรายการได้รับnคะแนนเท่ากันผลงานที่ชนะจะเป็นรายการที่ได้คะแนนสูงสุดnในเวลาอันสั้นบนเครื่องของฉัน หากผลงานที่ดีที่สุดสองรายการเท่ากันในเกณฑ์นี้เช่นกันผู้ชนะจะได้รับคำตอบก่อน ภาษาและห้องสมุด คุณสามารถใช้ภาษาและไลบรารี่ที่คุณต้องการได้ฟรี ฉันจะต้องสามารถเรียกใช้รหัสของคุณดังนั้นโปรดรวมคำอธิบายแบบเต็มสำหรับวิธีการเรียกใช้ / รวบรวมรหัสของคุณใน linux ถ้าเป็นไปได้ทั้งหมด My Machineเวลาของฉันจะทำงานบนเครื่องของฉัน นี่คือการติดตั้ง Ubuntu มาตรฐานบนโปรเซสเซอร์ AMD FX-8350 Eight-Core …

2
รหัสหลามที่เร็วที่สุดเพื่อค้นหากลุ่มคำที่ชนะในเกมนี้
นี่คือเกมคำศัพท์จากชุดการ์ดกิจกรรมสำหรับเด็ก ด้านล่างกฎคือรหัสเพื่อค้นหา triplet ที่ดีที่สุดโดยใช้ / usr / share / dict / words ฉันคิดว่ามันเป็นปัญหาการเพิ่มประสิทธิภาพที่น่าสนใจและฉันสงสัยว่าผู้คนสามารถค้นหาการปรับปรุงได้หรือไม่ กฎระเบียบ เลือกตัวอักษรหนึ่งตัวจากแต่ละชุดด้านล่าง เลือกคำโดยใช้ตัวอักษรที่เลือก (และอื่น ๆ ) ทำคะแนนคำว่า ตัวอักษรแต่ละตัวจากชุดที่เลือกจะได้รับหมายเลขที่แสดงพร้อมชุด (รวมซ้ำ) AEIOU นับ 0 ตัวอักษรอื่น ๆ ทั้งหมดคือ -2 ทำซ้ำขั้นตอนที่ 1-3 ด้านบน (ไม่ใช้ตัวอักษรซ้ำในขั้นตอนที่ 1) อีกสองครั้ง คะแนนสุดท้ายคือผลรวมของคะแนนสามคำ ชุด (ชุดที่ 1 คะแนน 1 คะแนนชุดที่ 2 คะแนน 2 คะแนน ฯลฯ ) LTN RDS …

4
ตัวหารสามัญโดยประมาณที่เร็วที่สุด
ภาพรวม ในการท้าทายนี้คุณจะได้รับตัวเลขสองตัวซึ่งทั้งคู่มีค่าออฟเซ็ตขนาดเล็กมากกว่าจำนวนของขนาดกลางจำนวนมาก คุณต้องส่งออกหมายเลขขนาดกลางที่เกือบจะเป็นตัวหารของตัวเลขทั้งสองยกเว้นการชดเชยขนาดเล็ก ขนาดของตัวเลขที่เกี่ยวข้องจะถูกทำให้เป็นพารามิเตอร์โดยพารามิเตอร์ความยากลำบาก, l. วัตถุประสงค์ของคุณคือการแก้ปัญหาให้ได้มากที่สุดlในเวลาไม่ถึง 1 นาที ติดตั้ง ในปัญหาที่กำหนดจะมีหมายเลขลับpซึ่งจะเป็นหมายเลขบิตแบบสุ่มl^2( l*l) จะมีตัวคูณสองตัวq1, q2ซึ่งจะเป็นl^3ตัวเลขสุ่มและจะมีสองออฟเซ็r1, r2ตซึ่งจะเป็นlตัวเลขบิตสุ่ม ข้อมูลเข้าสู่โปรแกรมของคุณจะถูกx1, x2กำหนดเป็น: x1 = p * q1 + r1 x2 = p * q2 + r2 นี่คือโปรแกรมสำหรับสร้างกรณีทดสอบใน Python: from random import randrange from sys import argv l = int(argv[1]) def randbits(bits): return randrange(2 ** (bits - …

2
นับว่าลำดับระยะทางอยู่ไกลจากคนอื่นมากแค่ไหน
ระยะ Hammingระหว่างสองสายความยาวเท่ากันคือจำนวนของตำแหน่งที่สัญลักษณ์ที่สอดคล้องกันจะแตกต่างกัน ให้Pเป็นสตริงไบนารีของความยาวnและเป็นสตริงไบนารีของความยาวT 2n-1เราสามารถคำนวณnระยะทาง Hamming ระหว่างPและnสตริงย่อยความยาวของทั้งหมดTตามลำดับจากซ้ายไปขวาและใส่ลงในอาร์เรย์ (หรือรายการ) ตัวอย่างลำดับระยะทาง Hamming ขอและP = 101 T = 01100ลำดับของ Hamming 2,2,1ระยะทางที่คุณได้รับจากคู่นี้คือ คำจำกัดความของความใกล้ชิด ทีนี้ลองพิจารณาลำดับของระยะทาง Hamming สองอย่าง พูดx = (0, 2, 2, 3, 0)และy = (2, 1, 4, 4, 2)เป็นตัวอย่าง เรากล่าวว่าxและyมีcloseถ้าหรือถ้าy <= x <= 2*y x <= y <= 2*xนี่คือการคูณสเกลาร์และความไม่เท่าเทียมกันถูกนำมาเป็นองค์ประกอบ กล่าวคือสำหรับลำดับสองAและB, ดัชนีทั้งหมดA <= B iff A[i] …

1
อ่านคำไขว้อย่างรวดเร็ว!
คล้ายกับคำถามนี้แต่นี่เป็นรูปแบบไขว้! แทนที่จะมีเพียงหนึ่งตัวอักษรต่อตารางกริดคุณสามารถมีหนึ่งหรือสองตัว การป้อนข้อมูล: อาร์เรย์ 2d หรืออะไรก็ตามที่ทำงานในภาษาของคุณ คุณสามารถรับอินพุตที่ถูกต้องได้ ขนาดอาร์เรย์ใด ๆ จะต้องใช้งานได้ เอาท์พุท: อาร์เรย์ของคำทั้งหมด ข้ามและลง คำทั้งหมดต้องรวมเข้าด้วยกันเช่นถูกลิงก์ในคำที่ไม่ขาดสาย (หากไม่ส่งคืนเท็จ) คำต้องมีอย่างน้อยสองตารางกริดไม่ใช่ตัวอักษร ตัวอย่าง: [["", "wo", "r", "k"], [ "", "r", "", ""], [ "he", "l", "lo", ""], [ "", "d", "ad", ""]] ผลตอบแทน: ["work", "world", "hello", "load", "dad"] ตัวอย่าง: [["he", "ll", "o"], [ "", "", ""], …

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