Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. Minimum Moves to Equal Array Elements ใน C++

    แนวคิด สมมติว่ามีอาร์เรย์ขนาด n ให้หาจำนวนการเคลื่อนย้ายน้อยที่สุดเพื่อทำให้สมาชิกอาร์เรย์ทั้งหมดเท่ากัน โดยการเคลื่อนย้ายหมายถึงการเพิ่ม n - 1 สมาชิกขึ้น 1 เช่น ถ้าอินพุตคือ [3,2,3,4] ผลลัพธ์คือ 4 วิธีแก้: n := ขนาด nums ถ้า n เท่ากับ 0: คืนค่า 0 เรียงอาร์เรย์ nums ans := 0 วนลูป i := 0 ถึง n -

  2. Assign Cookies ใน C++

    แนวคิด = gi สามารถมอบคุกกี้ j ให้เด็ก i ได้ และเด็ก i จะพอใจ เป้าหมายคือเพิ่มจำนวนเด็กที่พอใจให้มากที่สุดและแสดงจำนวนสูงสุด เช่น ถ้าอินพุตคือ [1,2], [1,2,3] ผลลัพธ์คือ 2 มีเด็ก 2 คน คุกกี้ 3 ชิ้น Greed factors คือ 1, 2 มีคุกกี้ 3 ชิ้นขนาดพอที่จะทำให้เด็กทุกคนพอใจ ดังนั้นผลลัพธ์คือ 2 วิธีแก้: เรีย

  3. Construct the Rectangle ใน C++

    แนวคิด สมมติว่ามีพื้นที่เว็บเพจสี่เหลี่ยมผืนผ้าเฉพาะเจาะจง งานคือออกแบบเว็บเพจสี่เหลี่ยมผืนผ้า ความยาว L และความกว้าง W ที่ตรงตามเงื่อนไข: พื้นที่ของเว็บเพจต้องเท่ากับพื้นที่เป้าหมายที่กำหนด = W ความต่างระหว่าง L และ W ควรน้อยที่สุดเท่าที่จะเป็นไปได้ เช่น ถ้าอินพุตคือ 4 ผลลัพธ์คือ [2,2] เพราะพื้น

  4. Keyboard Row ใน C++

    แนวคิด ได้รับรายการคำ ให้หาคำที่พิมพ์ได้โดยใช้ตัวอักษรบนแถวเดียวของคีย์บอร์ดมาตรฐาน เช่น ถ้าอินพุตคือ [hello,world,mom,dad,try,type,tom] ผลลัพธ์คือ [dad,try,type] วิธีแก้: กำหนดอาร์เรย์ output oneRow := true กำหนด map charToRowMap เก็บคู่ {ตัวอักษร, แถว} ตัวอักษรบนคีย์บอร์ดและหมายเลขแถว สำหรับแต่

  5. Relative Ranks ใน C++

    แนวคิด สมมติว่ามีรายการคะแนนของนักกีฬา N คน ให้หา relative ranks และคนที่ได้คะแนนสูงสุด 3 อันดับแรก จะได้เหรียญ Gold, Silver และ Bronze เช่น ถ้าอินพุตคือ [2,5,3,1,0] ผลลัพธ์คือ [Bronze, Gold, Silver, 4, 5] วิธีแก้: ถ้าขนาด nums เท่ากับ 1: คืนค่า Gold nums[1]: คืนค่า Gold, Silver มิฉะนั้น: คืนค่า

  6. Perfect Number ใน C++

    แนวคิด สมมติว่าต้องตรวจสอบว่าจำนวนที่กำหนดเป็น perfect number หรือไม่ จำนวนจะเป็น perfect number เมื่อเท่ากับผลรวมของตัวหารบวกทั้งหมดยกเว้นตัวมันเอง จำนวน n จะอยู่ในช่วง 10^8 เช่น ถ้าอินพุตคือ 28 ผลลัพธ์คือ True เพราะผลรวมตัวหาร: 1 + 2 + 4 + 7 + 14 = 28 วิธีแก้: เนื่องจากตัวเลขอยู่ในช่วง 10^8 มี p

  7. Longest Uncommon Subsequence I ใน C++

    แนวคิด สมมติว่ามีสตริงสองสตริง ให้หา longest uncommon subsequence ของทั้งสองสตริง Longest uncommon subsequence คือ longest subsequence ของสตริงหนึ่ง และ subsequence นี้ไม่ควรปรากฏในอีกสตริงหนึ่ง ต้องหาความยาวของ longest uncommon subsequence หากไม่มี ให้คืนค่า -1 เช่น ถ้าอินพุตคือ aabbac, aabbcc ผลล

  8. K-diff Pairs in an Array ใน C++

    แนวคิด สมมติว่ามีอาร์เรย์และจำนวนเต็ม k ให้หาจำนวน unique k-diff pairs ในอาร์เรย์ k-diff pair คือ (i, j) โดย i และ j อยู่ในอาร์เรย์และความต่างสัมบูรณ์เท่ากับ k เช่น ถ้าอินพุตคือ [3,1,4,1,5], k = 2 ผลลัพธ์คือ 2 เพราะมี 2-diff pairs สองคู่คือ (1,3) และ (3,5) วิธีแก้: กำหนด map seen และ done กำหนดเซ

  9. Convert BST to Greater Tree ใน C++

    แนวคิด สมมติว่ามี Binary Search Tree ให้แปลงเป็น Greater Tree โดยทุก key ของ BST เดิมจะเปลี่ยนเป็น key เดิม + ผลรวมของ key ทั้งหมดที่มากกว่า key เดิมใน BST เช่น ถ้าอินพุตเป็น: ผลลัพธ์จะเป็น: วิธีแก้: กำหนดฟังก์ชัน revInorder() รับ root และ s ถ้า root เป็น null: คืนค่า revInorder(right of root,

  10. Reshape the Matrix ใน C++

    แนวคิด ในแพลตฟอร์มต่างๆ มีฟังก์ชัน reshape ที่ใช้เปลี่ยนรูปเมทริกซ์เป็นใหม่ขนาดต่างกันแต่ข้อมูลเหมือนเดิม ถ้ามีเมทริกซ์และค่า r, c สำหรับแถวและคอลัมน์ของเมทริกซ์ที่ต้องการ เช่น ถ้าอินพุตคือ [[5,10],[15,20]], row = 1 และ col = 4 ผลลัพธ์คือ [[5, 10, 15, 20]] วิธีแก้: กำหนดอาร์เรย์ temp กำหนดอาร์เรย

  11. Distribute Candies ใน C++

    แนวคิด สมมติว่ามีอาร์เรย์ความยาวคู่ ตัวเลขต่างๆ แทนชนิดลูกอมต่างๆ ตัวเลขแต่ละตัวคือลูกอมหนึ่งลูกของชนิดนั้น ต้องแจกลูกอมเท่ากันให้พี่น้อง ต้องหาจำนวนชนิดลูกอมสูงสุดที่น้องสาวได้รับ เช่น ถ้าอินพุตคือ [1,1,2,3] ผลลัพธ์คือ 2 เพราะถ้าน้องสาวได้ [2,3] และพี่ชายได้ [1,1] น้องสาวมี 2 ชนิด พี่ชายมี 1 ชนิด

  12. N-ary Tree Preorder Traversal ใน C++

    แนวคิด สมมติว่ามี N-ary tree ให้หา preorder traversal ของโหนดต่างๆ เช่น ถ้าอินพุตเป็น: ผลลัพธ์จะเป็น [1,3,5,6,2,4] วิธีแก้: กำหนดอาร์เรย์ ans กำหนดเมธอด preorder() รับ root ถ้า root เป็น null: คืนค่ารายการว่าง แทรกค่าของ root ลงท้าย ans สำหรับทุก child i ใน children array ของ root: preorder(i) ค

  13. Longest Harmonious Subsequence ใน C++

    แนวคิด ได้รับอาร์เรย์จำนวนเต็ม ให้หาความยาวของ longest harmonious subsequence ในทุก subsequence ที่เป็นไปได้ Harmonious sequence คืออาร์เรย์ที่ผลต่างระหว่างค่าสูงสุดและต่ำสุดเท่ากับ 1 อย่างแน่นอน เช่น ถ้าอินพุตคือ [1,3,2,2,5,2,3,7] ผลลัพธ์คือ 5 เพราะ longest harmonious subsequence คือ [4,3,3,3,4]

  14. Range Addition II ใน C++

    แนวคิด สมมติว่ามีเมทริกซ์ m * n ชื่อ M เริ่มต้นด้วย 0 ทั้งหมด และมีการอัปเดตหลายครั้ง การอัปเดตแทนด้วยอาร์เรย์ 2D แต่ละอาร์เรย์มีสองจำนวนเต็มบวก x และ y หมายถึง M[i][j] ควรเพิ่ม 1 สำหรับทุก i ในช่วง 0 ถึง a-1 และทุก j ในช่วง 0 ถึง b-1 ต้องหาจำนวนของจำนวนเต็มสูงสุดในเมทริกซ์หลังทำทุกการดำเนินการ เช่

  15. ดัชนีรวมต่ำสุดของสองรายการใน C++

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

  16. สามารถปลูกดอกไม้ได้หรือไม่ใน C++

    ปัญหา สมมติว่าเรามีแปลงดอกไม้ยาว ซึ่งบางแปลงปลูกแล้วและบางแปลงว่าง ตอนนี้มีข้อจำกัด คือ ไม่สามารถปลูกดอกไม้ในแปลงที่ติดกันได้ เพราะจะแข่งกันน้ำและทั้งคู่จะตาย ดังนั้น หากเรามีแปลงดอกไม้ แทนด้วยอาร์เรย์ที่มี 0 และ 1 โดย 0 แทนว่าง และ 1 แทนปลูกแล้ว และตัวเลข n ก็ถูกกำหนด เราต้องตรวจสอบว่าสามารถปลูกดอก

  17. ผลคูณสูงสุดของสามตัวเลขใน C++

    ปัญหา สมมติว่าเรามีอาร์เรย์จำนวนเต็ม เราต้องหาสามตัวเลขที่ผลคูณของพวกมันสูงสุด แล้วคืนค่าผลคูณสูงสุดนั้น เช่น ถ้าผนวกเข้าเป็น [1,1,2,3,3] ผลลัพธ์จะเป็น 18 เนื่องจากสามสมาชิกคือ [2,3,3] วิธีแก้ปัญหา จัดเรียงอาร์เรย์ nums l := ขนาดของ nums a := nums[l - 1], b := nums[l - 2], c := nums[l - 3],

  18. ผลรวมของจำนวนกำลังสองใน C++

    ปัญหา สมมติว่าเรามีจำนวนเต็มที่ไม่เป็นลบ c เราต้องตัดสินใจว่ามีจำนวนเต็ม a และ b สองตัวหรือไม่ ที่ทำให้ a^2 + b^2 = c เช่น ถ้าผนวกเข้าเป็น 61 ผลลัพธ์จะเป็น True เนื่องจาก 61 = 5^2 + 6^2 วิธีแก้ปัญหา กำหนดฟังก์ชัน isPerfect() รับ x: sr := รากที่สองของ x คืนค่า true เมื่อ (sr - fl

  19. ค่าเฉลี่ยของแต่ละระดับใน Binary Tree ใน C++

    ปัญหา สมมติว่าเรามี binary tree ที่ไม่ว่างเปล่า เราต้องหาค่าเฉลี่ยของโหนดในแต่ละระดับ และคืนค่าค่าเฉลี่ยเป็นอาร์เรย์ เช่น ถ้าผนวกเข้าเป็น (รูปภาพต้นไม้) ผลลัพธ์จะเป็น [3, 14.5, 11] วิธีแก้ปัญหา กำหนดอาร์เรย์ result กำหนดคิว q หนึ่งอัน เพิ่ม root เข้า q while (q ไม่ว่าง) ทำ: n :=

  20. ค่าเฉลี่ยสูงสุดของเซิร์บอาร์เรย์ I ใน C++

    ปัญหา สมมติว่าเรามีอาร์เรย์ที่มี n สมาชิก เราต้องหาเซิร์บอาร์เรย์ติดกันที่มีความยาว k ที่กำหนดซึ่งมีค่าเฉลี่ยสูงสุด เราต้องคืนค่าค่าเฉลี่ยสูงสุด เช่น ถ้าผนวกเข้าเป็น [1,13,-5,-8,48,3] และ k = 4 ผลลัพธ์จะเป็น 12.0 เนื่องจาก (13-5-8+48)/4 = 12.0 วิธีแก้ปัญหา sum := 0 for i := 0 ถึง k-1 ทำ: sum :

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:188/301  20-คอมพิวเตอร์/Page Goto:1 182 183 184 185 186 187 188 189 190 191 192 193 194