หน้าแรก
หน้าแรก
สมมติว่าเรามีตัวเลข n แสดงว่ามี n หลักสูตรต่างๆ ที่มีป้ายกำกับตั้งแต่ 1 ถึง n เรายังมีอาร์เรย์ที่เรียกว่าความสัมพันธ์ โดยที่ความสัมพันธ์[i] มีคู่ (prevCourse_i, nextCourse_i) ซึ่งแสดงถึงความสัมพันธ์ที่จำเป็นต้องมีระหว่างหลักสูตร prevCourse_i และหลักสูตร nextCourse_i ดังนั้นหลักสูตร prevCourse_i จะต้
สมมติว่าเรามีสตริง s ที่มีอักขระเพียงสามตัว a, b และ c เราจะใช้อัลกอริทึมต่อไปนี้กับสตริงกี่ครั้งก็ได้ - เลือกคำนำหน้าที่ไม่เว้นว่างจาก s โดยที่อักขระทั้งหมดในคำนำหน้าเหมือนกัน เลือกคำต่อท้ายที่ไม่เว้นว่างจาก s โดยที่อักขระทั้งหมดในส่วนต่อท้ายเหมือนกัน คำนำหน้าและส่วนต่อท้ายไม่ปะติดปะต่อกัน
สมมติว่าเรามีสามค่า a, b และ c เรากำลังเล่นเกมโซลิแทร์ที่มีหินสามกองซึ่งมีขนาด a, b และ c ตามลำดับ แต่ละเทิร์นผู้เล่นจะเลือกกองที่ไม่ว่างเปล่าสองกอง หยิบหินหนึ่งก้อนจากแต่ละกอง และเพิ่ม 1 คะแนนให้กับคะแนนของเขา เกมจะจบลงเมื่อมีกองที่ไม่ว่างน้อยกว่าสองกอง ดังนั้นเราต้องหาคะแนนสูงสุดที่คุณจะได้รับ ดั
สมมติว่าเรามีสองสตริง s และ t เราต้องการสร้างสตริงที่เรียกว่า merge ด้วยวิธีต่อไปนี้ ในขณะที่ s หรือ t ว่างเปล่า ให้เลือกตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้ - หาก s ไม่ว่าง ให้ผนวกอักขระตัวแรกใน s เพื่อรวมและลบออกจาก s หาก t ไม่ว่าง ให้ผนวกอักขระตัวแรกใน t เพื่อรวมและลบออกจาก t สุดท้าย เราต้องห
สมมติว่าเรามีอาร์เรย์ที่เรียกว่าจุดที่มีจุดพิกัดบนระนาบ 2 มิติ พวกมันจะถูกจัดเรียงตามค่า x โดยที่ points[i] =(x_i, y_i) ดังนั้น x_i
สมมติว่าเรามีสตริง s เราต้องหาจำนวนสตริงย่อยที่เป็นเนื้อเดียวกันของ s คำตอบอาจมีขนาดใหญ่มาก ดังนั้นให้ส่งคืนโมดูโลคำตอบ 10^9+7 กล่าวกันว่าสตริงเป็นเนื้อเดียวกันเมื่ออักขระทั้งหมดของสตริงเหมือนกัน ดังนั้น หากอินพุตเป็น s =xyyzzzzxx ผลลัพธ์จะเป็น 13 เนื่องจากสตริงย่อยที่เป็นเนื้อเดียวกันมีการระบุไว้เ
สมมติว่าเรามีจำนวนอาร์เรย์ที่องค์ประกอบ ith ระบุถุงที่มีจำนวนลูกบอล nums[i] เรายังมีค่าอื่นที่เรียกว่า mx เราสามารถดำเนินการต่อไปนี้ได้สูงสุด mx ครั้ง - เลือกถุงลูกใดก็ได้แล้วแบ่งเป็นถุงใหม่สองใบโดยมีลูกบอลอย่างน้อยหนึ่งลูก บทลงโทษในที่นี้คือจำนวนบอลสูงสุดในกระเป๋า เราต้องลดโทษให้น้อยที่สุด
สมมติว่าเรามีสตริงที่เรียกว่า num ซึ่งแสดงถึงจำนวนเต็มที่มากและมีค่าอื่น k ด้วย เราสามารถสลับสองหลักใดๆ ของค่าที่อยู่ติดกันได้มากที่สุด k ครั้ง เราต้องหาค่าต่ำสุดที่เราหาได้ ดังนั้น หากอินพุตเท่ากับ num =5432 k =4 เอาต์พุตจะเป็น 2453 เพราะหมายเลขแรกคือ 5432 จากนั้นหลังจากเฟสแรกจะเป็น 4532 จากนั้นจึ
0, subarray (i-1)th จะปรากฏขึ้นก่อน อาร์เรย์ย่อยของ ith เป็น nums ดังนั้น ถ้าอินพุตเป็นเหมือนกลุ่ม =[[2,-2,-2],[4,-3,0]] nums =[1,-1,0,2,-2,-2,4,- 3,0] ผลลัพธ์จะเป็นจริงเนื่องจากอาร์เรย์ group[0] มีตั้งแต่ดัชนี 3 ถึง 5 ของ nums และ group[1] มาจากดัชนี 6 ถึง 8 ใน nums เพื่อแก้ปัญหานี้ เราจะทำตามขั้
สมมติว่ามีผู้เล่นสองคนคือ Amal และ Bimal พวกเขากำลังเล่นเกม และโดยที่ Amal จะเริ่มก่อน ในขั้นต้น มีก้อนหินที่แตกต่างกันในกอง ในเทิร์นของผู้เล่นแต่ละคน เขาทำการเคลื่อนไหวโดยนำหินจำนวนสี่เหลี่ยมจัตุรัส (ที่ไม่ใช่ศูนย์) ออกจากกอง นอกจากนี้ หากผู้เล่นคนใดไม่สามารถเคลื่อนไหวได้ เขาจะแพ้เกม ดังนั้นหากเราม
สมมติว่าเรามีรายชื่อตำแหน่ง ซึ่งมีรายการจุดพิกัดที่มีบ้านบางหลังตั้งอยู่ หากคุณต้องการสร้างศูนย์บริการที่ (xc, yc) เพื่อให้ผลรวมของระยะทางแบบยุคลิดจากจุดใดก็ตามที่กำหนดถึง (xc, yc) มีค่าน้อยที่สุด เราจึงต้องหาผลรวมของระยะทางขั้นต่ำ ดังนั้น หากอินพุตเหมือนกับตำแหน่ง =[(10,11),(11,10),(11,12),(12,11)
สมมติว่าเรามีสตริง s ที่มีตัวพิมพ์เล็กเท่านั้น เราต้องหาจำนวนสูงสุดของสตริงย่อยที่ไม่ว่างของ s ที่ตรงตามกฎต่อไปนี้ สตริงย่อยไม่ทับซ้อนกัน สตริงย่อยที่มีอักขระเฉพาะ ch ต้องมี ch เกิดขึ้นทั้งหมดด้วย เราต้องหาจำนวนสตริงย่อยสูงสุดที่ตรงตามเงื่อนไขทั้งสองนี้ หากมีวิธีแก้ปัญหามากกว่าหนึ่งรายการที
สมมติว่าเรามีสตริงไบนารีที่เรียกว่ากล่อง โดยที่ Boxes[i] คือ 0 แสดงว่ากล่อง ith ว่างเปล่า และ 1 แสดงว่ามีหนึ่งลูกบอล ในการดำเนินการครั้งเดียว เราสามารถย้ายลูกบอลหนึ่งลูกจากกล่องหนึ่งไปยังกล่องที่อยู่ติดกัน หลังจากทำเช่นนั้น อาจมีมากกว่าหนึ่งลูกในบางกล่อง เราต้องหาคำตอบอาร์เรย์ขนาด n โดยที่ answer[i]
สมมติว่าเรามีอาร์เรย์ที่เรียกว่าเป้าหมายที่มีค่าบวก ตอนนี้ให้พิจารณาอาร์เรย์เริ่มต้นที่มีขนาดเท่ากันกับศูนย์ทั้งหมด เราต้องหาจำนวนการดำเนินการขั้นต่ำที่จำเป็นในการสร้างอาร์เรย์เป้าหมายจากค่าเริ่มต้นหากเราดำเนินการนี้:(เลือกอาร์เรย์ย่อยใดก็ได้จากค่าเริ่มต้นและเพิ่มแต่ละค่าทีละหนึ่ง) ดังนั้น ถ้าอินพุ
=m) อาร์เรย์มี 1 ดัชนี ตอนนี้คะแนนเริ่มต้นของเราคือ 0 เราต้องการดำเนินการ m ให้ถูกต้อง ในการดำเนินการ ith (จัดทำดัชนี 1 รายการ) เราจะ - เลือกค่าหนึ่งค่าจาก x จากจุดเริ่มต้นหรือจุดสิ้นสุดของตัวเลข เพิ่มตัวคูณ[i] * x ให้กับคะแนน ลบ x ออกจากจำนวนอาร์เรย์ เราต้องหาคะแนนสูงสุดหลังจากดำเนินการ
สมมติว่าเรามีสตริง s และอีกค่าหนึ่งคือ k เราสามารถลบอักขระได้ไม่เกิน k ตัวจาก s เพื่อให้ความยาวของเวอร์ชันที่เข้ารหัสของ s มีความยาวน้อยที่สุด อย่างที่เราทราบดีว่าการเข้ารหัสตามความยาวของรันเป็นวิธีการบีบอัดสตริงที่แทนที่อักขระที่เหมือนกันต่อเนื่องกัน (2 ครั้งขึ้นไป) ด้วยการต่ออักขระและตัวเลขที่ทำเค
สมมติว่าเรามีสองอาร์เรย์ nums1 และ nums2 เส้นทางที่ถูกต้องถูกกำหนดดังนี้ - เลือก nums1 หรือ nums2 ที่จะข้าม (จาก index-0) สำรวจอาร์เรย์จากซ้ายไปขวา ตอนนี้ หากเรากำลังเคลื่อนผ่านค่าใดๆ ที่มีอยู่ใน nums1 และ nums2 เราสามารถเปลี่ยนเส้นทางไปยังอาร์เรย์อื่นได้ คะแนนคือผลรวมของค่าที่ไม่ซ้ำในเส้นท
สมมติว่าเรามีสตริงตัวเลข s อย่างที่เราทราบดีว่าสตริงย่อยที่ยอดเยี่ยมคือสตริงย่อยที่ไม่ว่างเปล่าของ s ซึ่งเราสามารถทำการสลับจำนวนเท่าใดก็ได้เพื่อทำให้มันเป็นพาลินโดรม เราต้องหาความยาวของความยาวสูงสุดของสตริงย่อยที่น่ากลัวของ s ดังนั้น หากอินพุตเป็นเหมือน s =4353526 ผลลัพธ์จะเป็น 5 เพราะ 35352 เป็นสต
สมมติว่าเรามีค่า n และอาร์เรย์ที่เรียกว่า cuts พิจารณาว่ามีแท่งไม้ยาว n หน่วย ไม้มีป้ายกำกับตั้งแต่ 0 ถึง n ที่นี่ cuts[i] แสดงถึงตำแหน่งที่เราสามารถตัดได้ เราควรทำการตัดตามลำดับ แต่เราสามารถเปลี่ยนลำดับของการตัดได้ตามต้องการ ต้นทุนของการตัดครั้งเดียวคือขนาดของไม้ที่จะตัด และต้นทุนรวมคือผลรวมของต้นท
สมมติว่าเรามีตัวเลข n ดังนั้น ให้พิจารณาว่าไม่มีส้มในครัว และเรากินส้มเหล่านี้ทุกวันโดยรักษากฎเหล่านี้:1. กินส้มลูกเดียว 2. ถ้า n เป็นเลขคู่ ให้กินส้ม n/2 ผล 3. ถ้า n หารด้วย 3 ลงตัวสามารถกินส้ม 2*(n/3) ได้ เราสามารถเลือกได้เพียงตัวเลือกเดียวในแต่ละวัน เราต้องหาจำนวนวันขั้นต่ำที่จะกินส้มได้ ดังนั้น