คำถามติดแท็ก optimization

สำหรับความท้าทายที่มุ่งเน้นการเพิ่มประสิทธิภาพของส่วนที่ไม่ครอบคลุมโดยแท็กอื่น ๆ

14
ค้นหาสี่เหลี่ยมสูงสุด 1s
พื้นหลัง ฉันต้องการซื้อที่ดินและสร้างบ้านของฉันบนมัน บ้านของฉันควรเป็นรูปสี่เหลี่ยมผืนผ้าและมีขนาดใหญ่ที่สุด อย่างไรก็ตามพล็อตที่มีอยู่นั้นมีพื้นที่หินมากมายที่ฉันไม่สามารถสร้างได้และฉันมีปัญหากับการสร้างบ้านที่มีศักยภาพบนที่ดิน ฉันต้องการให้คุณเขียนโปรแกรมที่วิเคราะห์แปลงให้ฉัน อินพุตและเอาต์พุต ข้อมูลที่คุณป้อนเป็นบิต 2 มิติรูปสี่เหลี่ยมผืนผ้าขนาดอย่างน้อย 1 × 1 ในรูปแบบที่เหมาะสม อาร์เรย์แสดงให้เห็นถึงที่ดิน 1มีพื้นที่ "ดี" ที่ฉันสามารถสร้างบ้านของฉันและพื้นที่0เป็น "หิน" ที่ไม่สามารถสร้างบ้านได้ เอาต์พุตของคุณจะต้องเป็นพื้นที่สูงสุดของสี่เหลี่ยมทึบของ1s ในอาร์เรย์อินพุต มันหมายถึงพื้นที่ของบ้านที่ใหญ่ที่สุดที่ฉันสามารถสร้างบนที่ดิน โปรดทราบว่าถ้าไม่มี1s 0ในการป้อนข้อมูลแล้วส่งออกเป็น ตัวอย่าง พิจารณาอินพุต 101 011 111 สี่เหลี่ยมที่ใหญ่ที่สุดคือสี่เหลี่ยม12 × 2 ที่มุมขวาล่าง 4ซึ่งหมายความว่าการส่งออกที่ถูกต้องคือ กฎและการให้คะแนน คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต กรณีทดสอบ 0 -> 0 1 -> 1 00 00 -> 0 01 10 …

2
สร้างคำไขว้ที่ไม่ซ้ำกันที่แก้ไขได้ ... โดยไม่ต้องมีเงื่อนงำ
คุณลองนึกภาพการไขปริศนาอักษรไขว้ New York Times โดยไม่มีเบาะแสใด ๆ อาจจะไม่ได้กับความคิดสร้างสรรค์และคำและวลีใหม่ทั้งหมดที่ปรากฏในปริศนาอักษรไขว้ที่ทันสมัย ​​แต่มีรายการคำคงที่มีความหวังบางอย่าง ในความท้าทายนี้คุณสร้างตารางตัวต่อไขว้ซึ่งเป็นไปได้ในทางทฤษฎี ความท้าทาย เพิ่มจำนวนสี่เหลี่ยมสีขาวให้ใหญ่ที่สุดในตารางตัวต่อปริศนาไขว้ขนาด 15x15 สีขาวและสีดำเพื่อให้สี่เหลี่ยมสีขาวนั้นเต็มไปด้วยตัวอักษรที่ไม่ซ้ำกัน ชี้แจงการก่อสร้างตาราง ในหนังสือพิมพ์ของสหรัฐอเมริกากริดไขว้มักจะถูกสร้างขึ้นเพื่อให้ตัวอักษรทุกตัวมีการ "ตรวจสอบ" ซึ่งหมายความว่ามันเป็นส่วนหนึ่งของทั้งคำ "ข้าม" และคำ "ลง" ในสหราชอาณาจักรและที่อื่น ๆ (โดยเฉพาะในปริศนาอักษรไขว้ที่คลุมเครือ ) กรณีนี้ไม่จำเป็นว่า: หากคำว่า "ข้าม" หรือ "ลง" จะเป็นตัวอักษรเพียงตัวเดียวก็ไม่จำเป็นต้องเป็นคำที่แท้จริง (เช่น "A" หรือ "ฉัน" ") สำหรับความท้าทายนี้ให้ปฏิบัติตามกฎที่ผ่อนคลายมากขึ้น: คำตัวอักษรเดียวไม่จำเป็นต้องปรากฏในรายการคำ มีประเพณีอื่น ๆ อีกมากมาย (ในสหรัฐอเมริกาและที่อื่น ๆ ) ซึ่งไม่จำเป็นต้องปฏิบัติตามในการท้าทายนี้ ตัวอย่างเช่นคำอาจมีความยาวเพียงสองตัวอักษรคำได้รับอนุญาตให้ทำซ้ำและตารางไม่จำเป็นต้องมีความสมมาตร (การหมุน) เป็นไปได้ไหม ใช่ หนึ่งสามารถเขียนสคริปต์สั้น ๆ …

14
นี่เป็นตัวเลขสามเหลี่ยมที่ถูกตัดทอนหรือไม่?
ลำดับ OEIS ที่เกี่ยวข้อง: A008867 หมายเลขสามเหลี่ยมที่ถูกตัดทอน คุณสมบัติทั่วไปของตัวเลขสามเหลี่ยมคือพวกเขาสามารถจัดเรียงในรูปสามเหลี่ยม ตัวอย่างเช่นใช้ 21 และจัดเป็นสามเหลี่ยมของos: โอ อู OOO oooo ooooo oooooo ลองกำหนด "การตัดปลาย:" การตัดสามเหลี่ยมขนาดเดียวกันจากแต่ละมุม วิธีหนึ่งในการตัดทอน 21 มีดังนี้: . . . OOO oooo . ooo . . oo . (รูปสามเหลี่ยม.ถูกตัดจากต้นฉบับ) oเหลืออีก12 วินาทีดังนั้น 12 จึงเป็นเลขสามเหลี่ยมที่ถูกตัดทอน งาน งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่น (หรือเทียบเท่า) ที่ใช้จำนวนเต็มและส่งกลับ (หรือใช้วิธีการส่งออกมาตรฐานใด ๆ ) ไม่ว่าจะเป็นตัวเลขเป็นจำนวนสามเหลี่ยมตัดทอน กฎระเบียบ ไม่มีช่องโหว่มาตรฐาน อินพุตเป็นจำนวนเต็มที่ไม่เป็นลบ การตัดไม่สามารถมีความยาวด้านเกินกว่าครึ่งหนึ่งของสามเหลี่ยมเดิม (เช่นการตัดไม่สามารถซ้อนทับกันได้) …
20 code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

3
ปริศนาของ Piet (Mondrian)
สำหรับข้อมูลเพิ่มเติมดูวิดีโอนี้และไปที่A276523สำหรับลำดับที่เกี่ยวข้อง ปริศนา Mondrian (สำหรับจำนวนเต็มn) มีดังต่อไปนี้: ใส่สี่เหลี่ยมที่ไม่สอดคล้องกันลงในn*nตารางสี่เหลี่ยม อะไรคือความแตกต่างที่เล็กที่สุดระหว่างสี่เหลี่ยมที่ใหญ่ที่สุดกับสี่เหลี่ยมเล็กที่สุด? สำหรับ6ความแตกต่างที่ดีที่สุดสำหรับM(6)คือ5และสามารถแสดงให้เห็นเช่น: ___________ | |S|_______| | | | L | | |_|_______| | | | | | |_____|___| |_|_________| (fig. I) สี่เหลี่ยมผืนผ้าใหญ่ที่สุด (L) มีพื้นที่2 * 4 = 8และสี่เหลี่ยมเล็กที่สุด (S) 1 * 3 = 3มีพื้นที่ 8 - 3 = 5ดังนั้นความแตกต่างคือ เก็บไว้ในใจว่าขณะนี้ยังไม่มีการแก้ปัญหาที่ดีที่สุดสำหรับการn > 44ได้รับพบว่า งานของคุณคือการสร้างโปรแกรมที่สร้างตาราง Mondrian …

29
ค้นหาความเบี่ยงเบนสูงสุด
ปัญหานี้เกิดจาก "แรงบันดาลใจ" จากคำถามที่เคยถูกถามในQuora (ไม่ใช่สำหรับการตีกอล์ฟ) ฉันแค่อยากทำให้มันท้าทายสำหรับพวกคุณ (และการส่งปัญหาแรกของฉันที่นี่) กำหนดอาร์เรย์ขององค์ประกอบจำนวนเต็มvและจำนวนเต็มd(เราสมมติว่า d ต่ำกว่าหรือเท่ากับความยาวของอาร์เรย์) ให้พิจารณาลำดับทั้งหมดของdองค์ประกอบที่ต่อเนื่องกันในอาร์เรย์ สำหรับแต่ละลำดับคำนวณความแตกต่างระหว่างค่าสูงสุดและต่ำสุดขององค์ประกอบในลำดับนั้นและตั้งชื่อมันว่าส่วนเบี่ยงเบน งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่คำนวณค่าสูงสุดระหว่างความเบี่ยงเบนทั้งหมดของลำดับทั้งหมดที่พิจารณาข้างต้นและส่งคืนหรือส่งออกค่านั้น ตัวอย่างที่ทำงานผ่าน: v: (6,9,4,7,4,1) d: 3 The sequences of length 3 are: 6,9,4 with deviation 5 9,4,7 with deviation 5 4,7,4 with deviation 3 7,4,1 with deviation 6 Thus the maximal deviation is 6, so the output is 6. …

4
“ เสร็จงาน” โดยเร็วที่สุด
พื้นหลัง ลองนึกภาพสักครู่ว่าคุณมีงานที่น่าเบื่ออย่างเหลือเชื่อ ทุกเช้าคุณจะได้รับชุดของงานที่คุณควรทำงานในวันนั้น แต่ละงานมีระยะเวลาแน่นอนและเมื่อเริ่มต้นแล้วจะต้องทำให้สำเร็จในครั้งเดียว เจ้านายของคุณจะไม่ยอมเกียจคร้านดังนั้นถ้ามีงานที่คุณยังสามารถทำให้เสร็จก่อนกลับบ้านคุณจะต้องทำงานกับสิ่งใดสิ่งหนึ่ง (คุณสามารถเลือกได้) ในทางกลับกันถ้างานที่เหลืออยู่ทั้งหมดจะทำให้คุณต้องทำงานล่วงเวลาคุณจะต้องกลับบ้านก่อน! ดังนั้นเป้าหมายของคุณคือการลดระยะเวลาการทำงานของคุณให้สั้นที่สุดด้วยการกำหนดตารางเวลาที่ชาญฉลาด ความจริงแล้วสนุก: นี่เป็นหนึ่งในตัวแปรของปัญหาการจัดตารางเวลาขี้เกียจของระบบราชการและมันเป็นปัญหาที่ยาก ( แหล่งที่มา ) อินพุต คุณมีสองอินพุต: จำนวนของ "หน่วยเวลา" ในวันทำงานของคุณ (จำนวนเต็มบวกL) และการรวบรวมงาน (อาร์เรย์ที่ไม่ว่างของจำนวนเต็มบวกTแสดงถึงระยะเวลาของงาน) พวกเขาสามารถดำเนินการในลำดับใด ๆ และในรูปแบบที่เหมาะสม อาร์เรย์Tอาจจะมีงานที่มีระยะเวลามากกว่าแต่ก็รับประกันได้ว่าจะมีอย่างน้อยหนึ่งงานที่มีระยะเวลาที่มากที่สุดLL เอาท์พุต ตารางเวลาที่ถูกต้องเป็นส่วนหนึ่งของงานS ⊆ Tดังกล่าวที่sum(S) ≤ Lและงานที่ไม่ได้อยู่ในทุกS(multiplicities นับ) L - sum(S)มีระยะเวลาอย่างเคร่งครัดมากกว่า ผลลัพธ์ของคุณจะเป็นผลรวมที่น้อยที่สุดที่เป็นไปได้ของกำหนดการที่ถูกต้อง กล่าวอีกนัยหนึ่งคุณจะแสดงจำนวนหน่วยเวลาที่น้อยที่สุดที่คุณต้องทำงานในวันนี้ ตัวอย่าง พิจารณาอินพุต L = 9 T = [3,4,4,4,2,5] วิธีหนึ่งในการกำหนดวันของคุณคือ[4,4]: คุณทำงานสองอย่างให้เสร็จใน 8 หน่วยเวลาและเหลือ 1 …

7
ปรับ Scralphabet ให้เหมาะสม
Scralphabet ถุง Scrabble แบบปกติประกอบด้วยตัวอักษรต่อไปนี้ ( ?เป็นช่องว่างที่สามารถย่อมาจากตัวอักษรอื่น): AAAAAAAAABBCCDDDDEEEEEEEEEEEEFFGGGHHIIIIIIIIIJKLLLLMMNNNNNNOOOOOOOOPPQRRRRRRSSSSTTTTTTUUUUVVWWXYYZ?? ตัวอักษรมีค่าดังต่อไปนี้: {"A": 1,"B": 3,"C": 3,"D": 2,"E": 1,"F": 4,"G": 2,"H": 4,"I": 1,"J": 8,"K": 5,"L": 1,"M": 3,"N": 1,"O": 1,"P": 3,"Q": 10,"R": 1,"S": 1,"T": 1,"U": 1,"V": 4,"W": 4,"X": 8,"Y": 4,"Z": 10,"?": 0} ให้ถุงปกติของ Scrabble ไพ่สร้างชุดคำที่ไม่ตัดกันที่มีคะแนนสูงสุด (เช่นแต่ละคำไม่ใช่บนกระดาน Scrabble) ตามเงื่อนไขต่อไปนี้: sum(letter_values) * length(word)คะแนนสำหรับแต่ละคำคือ คุณสามารถใส่คำได้สูงสุดหนึ่งคำที่ขึ้นต้นด้วยตัวอักษรแต่ละตัว (สูงสุด 26 คำ) อาจรวมเฉพาะคำข่วนที่ถูกต้อง …

8
เส้นทางที่เหมาะสมผ่านเมทริกซ์
รับเมทริกซ์ที่ประกอบด้วยจำนวนเต็มบวกเอาท์พุทพา ธ ด้วยผลรวมต่ำสุดเมื่อเคลื่อนที่จากองค์ประกอบบนซ้ายไปขวาล่าง คุณสามารถเคลื่อนที่ในแนวตั้งแนวนอนและแนวทแยงมุม โปรดทราบว่าเป็นไปได้ที่จะเลื่อนขึ้น / ลง, ขวา / ซ้ายและแนวทแยงมุมไปทุกด้าน ตัวอย่าง: 1* 9 7 3 10 2 2 10 4* 1* 1* 1* 7 8 3 6 3 8 9 5* 7 8 10 2 5 2 1* 4 5 1 1 3 6 7 9* เส้นทางให้ผลรวมต่ำสุดจะมีเครื่องหมายดอกจันและผลในผลรวมต่อไปนี้: 1 + 4 …

2
Island Golf # 2: The Hermes Eccentric
นี่เป็นครั้งที่สองในชุดของความท้าทาย Island Golf ความท้าทายก่อนหน้า ฤาษีสองคนมาถึงบนเกาะทะเลทราย เนื่องจากพวกเขามาแสวงหาความสันโดษพวกเขาต้องการอยู่ห่างไกลกันมากที่สุด พวกเขาควรจะสร้างกระท่อมของพวกเขาที่ไหนเพื่อเพิ่มระยะทางเดินระหว่างพวกเขาให้สูงสุด การอ่านที่เกี่ยวข้อง อินพุต ข้อมูลที่คุณป้อนจะเป็นตารางสี่เหลี่ยมที่ประกอบด้วยอักขระสองตัวซึ่งแสดงถึงที่ดินและน้ำ ในตัวอย่างด้านล่างที่ดิน#และน้ำเป็น.แต่คุณอาจแทนที่อักขระสองตัวที่คุณต้องการ ........... ...##...... ..#####.... ..#######.. .#########. ...#######. ...#####.#. ....####... ........... จะมีแผ่นพื้นอย่างน้อยสองแผ่นเสมอ แผ่นกระเบื้องพื้นดินจะต่อเนื่องกัน (เช่นมีเพียงเกาะเดียว) แผ่นน้ำก็จะต่อเนื่องกัน (เช่นไม่มีทะเลสาบ) เส้นขอบด้านนอกของตารางทั้งหมดจะเป็นแผ่นน้ำ แผ่นพื้นดินจะไม่เชื่อมต่อในแนวทแยงมุม: นั่นคือคุณจะไม่เห็นสิ่งที่ต้องการ .... .#.. ..#. .... เอาท์พุต รหัสต้องส่งออกของคุณตารางเดียวกันกับสองสถานที่กระท่อมทำเครื่องหมายบนมัน ในตัวอย่างด้านล่างสถานที่ตั้งของกระท่อมจะถูกทำเครื่องหมายด้วย X แต่คุณสามารถแทนที่อักขระใดก็ได้ตราบเท่าที่มันแตกต่างจากอักขระบนบกและน้ำ สถานที่ตั้งของกระท่อมจะต้องเป็นกระเบื้องดินเผาสองแผ่นซึ่งได้รับเลือกเพื่อเพิ่มระยะทางเดินระหว่างพวกเขาให้สูงสุด เรากำหนดระยะทางเดินเป็นความยาวของเส้นทางที่สั้นที่สุดทั้งบนบกระหว่างสองจุด แผ่นพื้นดินถูกพิจารณาว่าเป็นแนวนอนหรือแนวตั้ง แต่ไม่ใช่แนวทแยงมุม ทางออกที่เป็นไปได้สำหรับเกาะด้านบน: ........... ...X#...... ..#####.... ..#######.. .#########. ...#######. ...#####.X. ....####... …

2
กลยุทธ์บงการ
ฉันสามารถพบกับความท้าทายเกี่ยวกับรหัสสำหรับ Mastermind ได้เท่านั้นดังนั้นนี่เป็นเวอร์ชันที่ท้าทายรหัสที่ฉันอยากทำกับตัวเอง กลยุทธ์ที่ดีที่สุดสำหรับเกม Mastermind ปกติ MM (4,6) ถูกค้นพบโดย Koyama และ Lai ในปี 1993 โดยมีการเดา # โดยเฉลี่ย = 5625/1296 ~ 4.34 MM (5,8) ยังคงไม่ได้รับการแก้ไข แต่คาดว่าจะมีค่าเฉลี่ย # ของการเดา ~ 5.5 งานของคุณคือการสร้างกลยุทธ์ MM (5,8) นั่นคือสำหรับ 5 หลุมและ 8 สีครอบคลุมpow(8,5) = 32768โซลูชั่นที่แตกต่างที่เป็นไปได้ทั้งหมด เห็นได้ชัดว่ามันไม่จำเป็นต้องดีที่สุด คุณมีสองทางเลือก: โพสต์โปรแกรมกำหนดขึ้นที่สร้างกลยุทธ์ โปรแกรมจะต้องสามารถคอมไพล์ได้ / รันได้บน Windows 7, Mac OS X …

1
เกมผู้เล่น 2 คนที่สั้นที่สุดของ Halma
ในหมากรุกก็เป็นไปได้สำหรับเกมที่จะจบหลังจาก 4 ย้าย (2 แต่ละคน) กับคู่ของคนโง่ เป้าหมายของคุณคือค้นหา Fool's Mate of Halma : เกมสำหรับผู้เล่น 2 คนของ Halma ที่ลดจำนวนการเล่นลง มีสถานะของบอร์ดมากกว่า 10 56สถานะและฉันเห็นว่าปัจจัยการแตกสาขามีมากกว่า 1,000 ดังนั้นโอกาสที่จะไม่มีใครพบทางออกที่ดีที่สุด คุณกำลังพยายามหาทางออกที่ดีที่สุดแทน คุณควรส่งรายการการเคลื่อนไหวและรหัสใด ๆ ที่คุณใช้เพื่อสร้างการเคลื่อนไหวเหล่านั้น คำอธิบายของเกม Halma คล้ายกับ Chinese Checkers แต่เล่นบนกระดานขนาด 16 * 16 ตารางเมตร เริ่มแรกคณะกรรมการมีลักษณะเช่นนี้: เป้าหมายของเกมคือการย้ายชิ้นส่วนทั้งหมดของคุณไปยังตำแหน่งเริ่มต้นของชิ้นส่วนของฝ่ายตรงข้าม ในการเปิดของผู้เล่นเขา / เธออาจ: ผ่านการเลี้ยว ย้ายชิ้นใดชิ้นหนึ่งของเขา / เธอไปยังพื้นที่ว่างที่อยู่ติดกัน ช่องว่างที่อยู่ติดกันรวมถึงเส้นทแยงมุม เอาชิ้นหนึ่งของเขา / เธอและทำตามจำนวนครั้ง: กระโดดชิ้นเหนือชิ้นส่วนที่อยู่ติดกันเชื่อมโยงไปถึงในพื้นที่ตรงข้ามชิ้นกระโดดข้าม …

8
จัดเรียงตามบล็อกแบบสับ
บล็อกการเรียงลำดับแบบสุ่ม การเรียงบล็อกแบบสุ่มเป็นวิธีการ (ค่อนข้างจะเป็นการประดิษฐ์) ในการจัดเรียงรายการ มันทำงานได้ดังแสดงในตัวอย่าง [6, 1, 0, 3, 2, 4, -2, -1] Break list into contiguous blocks [6][1, 0][3, 2, 4][-2, -1] Sort each block [6][0, 1][2, 3, 4][-2, -1] Sort blocks lexicographically [-2, -1][0, 1][2, 3, 4][6] Concatenate [-2, -1, 0, 1, 2, 3, 4, 6] สามารถแบ่งพาร์ติชันไปยังบล็อกที่ต่อเนื่องกันได้ อย่างไรก็ตามตัวเลือกทั้งหมดของบล็อกจะไม่ให้รายการเรียงลำดับในตอนท้าย: …

1
Advent Challenge 1: ช่วยซานต้าปลดล็อกห้องนิรภัยของเขาในปัจจุบัน!
ถัดไป >> คำหลักที่สื่อความหมาย (สำหรับการค้นหา): สร้างสอง Matrices Equivalent, Overlap, Array, Find ท้าทาย ซานต้ามีประวัติของเอลฟ์ที่ขโมยของขวัญจากห้องนิรภัยของเขาในอดีตดังนั้นในปีนี้เขาได้ออกแบบกุญแจที่ยากต่อการถอดรหัส น่าเสียดายที่เขาสูญเสียชุดค่าผสมและเขาไม่สามารถหาวิธีเปิดได้! โชคดีที่เขาจ้างคุณให้เขียนโปรแกรมเพื่อค้นหาชุดค่าผสม ไม่จำเป็นต้องสั้นที่สุด แต่เขาต้องการค้นหาให้เร็วที่สุด! เขามีตารางงานที่เข้มงวดมากและเขาไม่สามารถรอได้นานมาก คะแนนของคุณจะเป็นจำนวนรันไทม์ทั้งหมดของโปรแกรมของคุณคูณด้วยจำนวนขั้นตอนที่โปรแกรมของคุณแสดงผลสำหรับอินพุตการให้คะแนน คะแนนต่ำสุดชนะ ข้อมูลจำเพาะ ล็อคเป็นเมทริกซ์จตุรัส 1s และ 0s มันถูกตั้งค่าเป็นการจัดเรียงแบบสุ่มของ 1s และ 0s และต้องถูกตั้งค่าเป็นรหัสที่ระบุ โชคดีที่ซานต้าจดจำรหัสที่ต้องการได้ มีไม่กี่ขั้นตอนที่เขาสามารถทำได้ แต่ละขั้นตอนสามารถดำเนินการกับเมทริกซ์ย่อยที่ต่อเนื่องกัน (นั่นคือคุณต้องเลือกเมทริกซ์ย่อยที่ล้อมรอบทั้งหมดด้วยมุมบนซ้ายและขวาล่าง) (อาจเป็นเมทริกซ์ย่อยที่ไม่ใช่สแควร์): หมุนไปทางขวา 90 องศา * หมุนซ้าย 90 องศา * หมุน 180 องศา วนรอบnองค์ประกอบแต่ละแถวทางซ้ายหรือขวา (แรป) วนmองค์ประกอบแต่ละคอลัมน์ขึ้นหรือลง (wraps) พลิกแนวนอน …

4
วันที่บีบอัดของสัปดาห์
กำหนดอินพุตของรายการวันในสัปดาห์เอาท์พุทการเรียงลำดับที่สั้นที่สุดของรายการ รูปแบบของการป้อนข้อมูลที่เป็นสตริงประกอบด้วยหนึ่งหรือมากกว่าของสตริงสองตัวอักษรSu(วันอาทิตย์), Mo(วันจันทร์) Tu( ฯลฯ ) We, Th, และFr Saอินพุตอาจไม่จำเป็นต้องถูกจัดเรียงตามลำดับ ในการแปลงอินพุตเป็นรูปแบบเอาต์พุต จัดเรียงอินพุตตามวันในสัปดาห์โดยเริ่มจากวันอาทิตย์ (เช่นThMoSaSuFrTuWe-> SuMoTuWeThFrSa) ลดตัวย่อลงไปหนึ่งตัวอักษรถ้ามันไม่มีใบความคลุมเครือ ตัวอย่างเช่นSuMoTuWeควรเป็นSMTWเพราะ S ตัวแรกไม่สามารถเป็นวันเสาร์ได้เนื่องจากจะทำให้เอาต์พุตไม่ได้เรียงลำดับ (เหมือนกันสำหรับ T) อย่างไรก็ตามThFrSaควรเป็นThFSเช่นวันอังคารและวันพฤหัสบดีมาก่อนวันศุกร์และลดลงเพื่อTFSสร้างความกำกวม หากเอาท์พุทเป็นตอนนี้MTWTFเอาท์พุทDแทน (ซึ่งหมายถึง "สัปดาห์วัน ") ในทำนองเดียวกันSSควรจะเป็นEสำหรับสัปดาห์สิ้นสุด ในที่สุด SMTWTFSควรกลายเป็นAสำหรับทุกวัน ทั้งอินพุตและเอาต์พุตต้องเป็นสตริงเดี่ยว เนื่องจากนี่คือcode-golfรหัสที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ กรณีทดสอบ: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | …

3
เพิ่มประสิทธิภาพการสั่งซื้อปีกของฉัน
ทวีตนี้แสดงรายการคำสั่งซื้อที่เป็นไปได้สำหรับ Wings of a Chinese restaurant 1 : เมื่อสั่งพิซซ่าฉันมักจะคำนวณขนาดที่ให้อัตราส่วนราคาพิซซ่าที่ดีที่สุดสำหรับฉันซึ่งเป็นการคำนวณอย่างง่าย อย่างไรก็ตามการลดราคาของการสั่งซื้อสินค้าที่ร้านอาหารนี้ไม่ใช่เรื่องง่ายดังนั้นฉันจึงต้องการเตรียมพร้อมสำหรับการสั่งซื้อครั้งต่อไปที่นั่น ท้าทาย ด้วยจำนวนเต็มมากกว่าหรือเท่ากับงานของคุณคือการส่งคืนคำสั่งซื้อที่เป็นไปได้หนึ่งคำสั่งซึ่งจะช่วยลดราคา (โดยรวมที่ถูกที่สุด) และจำนวนข้อตกลง444 ตัวอย่าง ถ้าฉันจะสั่งซื้อปีกก็จะเปิดออกต่อรองราคาที่ดีที่สุดจะเสียค่าใช้จ่าย$อย่างไรก็ตามมีหลายคำสั่งซึ่งจะมีค่าใช้จ่ายจำนวนนั้นคือ:100100100$111.20$111.20$111.20 [50,50],[25,25,50],[25,25,25,25] นับตั้งแต่การสั่งซื้อครั้งแรกจะใช้จำนวนน้อยที่สุดของข้อเสนอ ( ) ผลจะเป็น222[50,50] กฎระเบียบ ข้อมูลที่ป้อนจะเป็นจำนวนเต็มn≥4n≥4n \geq 4 ผลลัพธ์จะเป็นรายการ / อาร์เรย์ / ... ของขนาดคำสั่งซื้อที่รวมกันเป็นและลดราคาของคำสั่งซื้อ nnn คุณอาจเลือกที่จะส่งคืนคำสั่งซื้อที่เป็นไปได้ทั้งหมด Testcases 4 -> [4] (4.55) 23 -> [23] (26.10) 24 -> [6,18],[9,15],[12,12] (27.20) 31 -> [6,25] (34.60) …

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