Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. อัลกอริทึมค้นหา subarray ยาวที่สุดที่ผลต่างระหว่างสมาชิกติดกันเป็น 0 หรือ 1 ใน C++

    เราได้รับอาเรย์ขนาดเท่าใดก็ตาม และงานคือการหา subarray ของอาเรย์ที่กำหนดซึ่งสมาชิกมีผลต่างระหว่างสมาชิกติดกันเป็น 0 หรือ 1 อินพุต − int arr[] = { 2, 1, 5, 6, 3, 4, 7, 6 } เอาต์พุต − Maximum length subarray with difference between adjacent elements as either 0 or 1 are − 2 คำอธิบาย − สมาชิกติดกันในอ

  2. อัลกอริทึมค้นหา subsequence ยาวที่สุดที่ผลต่างระหว่างสมาชิกติดกันเป็น 0 หรือ 1 ใน C++

    เราได้รับอาเรย์ขนาดเท่าใดก็ตาม และงานคือการหา subsequence ในอาเรย์ที่กำหนดซึ่งสมาชิกมีผลต่างระหว่างสมาชิกติดกันเป็น 0 หรือ 1 อินพุต − int arr[] = { 2, 1, 5, 6, 3, 4, 7, 6 } เอาต์พุต − Maximum length subsequence with difference between adjacent elements as either 0 or 1 is − 3 คำอธิบาย − Subsequence

  3. ความยาว Subsequence สูงสุดที่ความต่างระหว่างติดกันเป็น 0 หรือ 1 | ชุดที่ 2 ใน C++

    เราได้รับอาร์เรย์ขนาดใดก็ได้ ภารกิจคือการหา subsequence ในอาร์เรย์ที่กำหนด โดยที่องค์ประกอบมีความต่างระหว่างติดกันเป็น 0 หรือ 1 อินพุต − int arr[] = { 2, 1, 5, 6, 3, 4, 7, 6 } เอาต์พุต − Maximum length subsequence with difference between adjacent elements as either 0 or 1 is: 3 คำอธิบาย − Subseque

  4. จำนวนคนสูงสุดที่ฆ่าได้ด้วยพลัง P ใน C++

    ภารกิจคือการหาจำนวนคนสูงสุดที่สามารถฆ่าได้ด้วยพลัง P พิจารณาแถวคนที่มีจำนวนไม่จำกัด แต่ละคนมีหมายเลขดัชนีเริ่มจาก 1 พลังของคนที่ s คือ s² หลังจากฆ่าคนที่มีพลัง s พลังของคุณก็ลดลง s ตัวอย่าง อินพุต P = 20 เอาต์พุต 3 คำอธิบาย พลังคนที่ 1 = 1×1 = 1 < 20 ฆ่าได้ เหลือ P = 20-1 = 19 พลังคนที่ 2 = 2×2 =

  5. จำนวนครั้งสูงสุดที่ลบ Subsequence ที่กำหนดออกจากสตริงได้ใน C++

    ภารกิจคือการหาจำนวนครั้งสูงสุดที่สามารถลบ subsequence ที่กำหนดออกจากสตริงได้ สตริง s กำหนดมา เราต้องหาจำนวน subsequence abc สูงสุดที่ลบออกจากสตริงได้ ตัวอย่าง อินพุต s = dnabcxy เอาต์พุต 1 คำอธิบาย พบ subsequence abc เพียง 1 ครั้งในสตริงที่กำหนด (dnabcxy) ดังนั้นผลลัพธ์คือ 1 อินพุต s = zcabcxabc

  6. จำนวน Line Segment สูงสุดที่สามารถครอบคลุมจุดที่กำหนดได้ใน C++

    ภารกิจคือการหาจำนวนสูงสุดของ line segments ที่สามารถครอบคลุมจุดที่กำหนดได้ ได้รับอาร์เรย์ a1[] ขนาด n1 และจำนวนเต็ม 2 ตัว A และ B จาก a1[] สร้าง n1 line segments ที่มีจุดเริ่มต้นและจุดสิ้นสุดเป็น a1[i] - A และ a1[i] + B ตามลำดับ อีกอาร์เรย์ a2[] ขนาด n2 มีจุดที่ต้องมอบหมายให้ line segments โดยที่จ

  7. จำนวนสี่เหลี่ยมจัตุรัสสูงสุดที่ใส่ในสามเหลี่ยมมุมฉากเท่ากับขาได้ใน C++

    ภารกิจคือการหาจำนวนสี่เหลี่ยมจัตุรัสที่มีด้าน a สูงสุดที่สามารถใส่ภายในสามเหลี่ยมมุมฉากเท่ากับขาที่มีฐาน s ได้ (สามเหลี่ยมเท่ากับขามีอย่างน้อย 2 ด้านเท่ากัน) ตัวอย่าง อินพุต s = 5, a = 1 เอาต์พุต 10 คำอธิบาย − จำนวนสี่เหลี่ยมจัตุรัสในฐานคำนวณได้จากการหาร s ด้วย a แล้วลบ 1 จำนวนสี่เหลี่ยมในฐาน = 5/

  8. จำนวน Substring ความยาว K ที่ประกอบด้วยตัวอักษรเดียวกันสูงสุดใน C++

    ภารกิจคือการหาจำนวนสูงสุดของ substring ความยาว K ที่ประกอบด้วยตัวอักษรเดียวกัน กำหนดสตริง s และจำนวนเต็ม K เราต้องนับการเกิดของ sub-strings ขนาด K ที่มีตัวอักษรเหมือนกัน จาก sub-strings ที่พบ เราต้องเลือก sub-string ที่เกิดขึ้นมากที่สุด ตัวอย่าง อินพุต s = tuuxyyuuc, K = 2 เอาต์พุต 2 คำอธิบาย Sub

  9. เส้นทางค่าทศนิยมสูงสุดในเมทริกซ์ไบนารีใน C++

    ภารกิจคือการหาค่าจำนวนเต็มสูงสุดที่ได้จากการเดินทางในเส้นทางจากมุมซ้ายบนไปมุมขวาล่างของอาร์เรย์ไบนารีสี่เหลี่ยมจัตุรัส คือ จากดัชนี [0][0] ไป [n-1][n-1] ระหว่างเดินทาง เราสามารถเคลื่อนที่ได้เฉพาะไปขวา ([i][j+1]) หรือลง ([i+1][j]) ค่าจำนวนเต็มจะคำนวณจากบิตของเส้นทางที่เดินผ่าน ตัวอย่าง อินพุต m =

  10. ความต่างสูงสุดของศูนย์และหนึ่งในสตริงไบนารี - O(n) ใน C++

    ภารกิจคือการหา sub-string จากสตริงไบนารีที่กำหนด และหาความต่างสูงสุดระหว่างจำนวนศูนย์และหนึ่ง ตัวอย่าง อินพุต str = 10010110 เอาต์พุต 2 คำอธิบาย ใน sub-array ตำแหน่ง 1 ถึง 4 (0010) ความต่างระหว่างศูนย์และหนึ่ง = 3 - 1 = 2 ซึ่งเป็นค่าสูงสุดที่หาได้ อินพุต str = 00000 เอาต์พุต 5 แนวทางที่ใช้ในโปรแ

  11. ความต่างสูงสุดของศูนย์และหนึ่งในสตริงไบนารีใน C++

    ภารกิจคือการหา sub-string จากสตริงไบนารีที่กำหนด และหาความต่างสูงสุดระหว่างจำนวนศูนย์และหนึ่ง ตัวอย่าง อินพุต str = 100100110 เอาต์พุต 2 คำอธิบาย ใน sub-array ตำแหน่ง 1 ถึง 5 (00100) ความต่างระหว่างศูนย์และหนึ่ง = 4 - 1 = 3 ซึ่งเป็นค่าสูงสุดที่หาได้ อินพุต str = 00000 เอาต์พุต 5 แนวทางที่ใช้ในโป

  12. ตัวอักษรพิมพ์เล็กที่แตกต่างกันสูงสุดระหว่างตัวอักษรพิมพ์ใหญ่ 2 ตัวใน C++

    ภารกิจคือการหาจำนวนสูงสุดของตัวอักษรพิมพ์เล็กที่แตกต่างกัน (distinct lowercase alphabets) ที่อยู่ระหว่างตัวอักษรพิมพ์ใหญ่ 2 ตัวในสตริงที่กำหนด ตัวอย่าง อินพุต str = JKyubDoorG เอาต์พุต 3 คำอธิบาย yub อยู่ระหว่างตัวพิมพ์ใหญ่ K และ D ทำให้ได้ 3 ตัว oor อยู่ระหว่าง D และ G ได้ 2 ตัว เพราะ o ซ้ำกัน แล

  13. จำนวนองค์ประกอบสูงสุดที่ทำให้เท่ากันได้ด้วยการอัปเดต k ครั้งใน C++

    ภารกิจคือการหาจำนวนองค์ประกอบสูงสุดที่สามารถทำให้เท่ากันได้ในอาร์เรย์ที่กำหนดหลังจากเพิ่มค่าขององค์ประกอบได้สูงสุด k ครั้ง ตัวอย่าง อินพุต a[] = {1, 3, 8}, k = 4 เอาต์พุต 2 คำอธิบาย ที่นี่เราสามารถได้ 2 ตัวเลข 4 โดยเพิ่ม 1 ไป 3 ครั้ง และเพิ่ม 3 ไป 1 ครั้ง ทำให้ a[] = {4, 4, 8} อินพุต arr = {2, 5,

  14. จำนวนองค์ประกอบสูงสุดที่ข้ามได้ด้วยหน่วย a และ b ใน C++

    ได้รับอาร์เรย์ไบนารี arr[] และตัวแปร 2 ตัว a และ b ที่มีค่าเริ่มต้น เพื่อข้ามองค์ประกอบในอาร์เรย์ arr[] มี 2 วิธี − ถ้า arr[i] == 1 ใช้ 1 หน่วยจาก a โดยไม่เปลี่ยนแปลง b ถ้าใช้ 1 หน่วยจาก b แล้ว a เพิ่มขึ้น 1 หน่วย (หมายเหตุ: ค่าของ a ไม่สามารถเพิ่มเกินค่าเดิมได้) ถ้า arr[i] == 0 ใช้ 1 หน่วยจาก a หร

  15. Bitmasking และ Dynamic Programming ใน C++

    ก่อนอื่น เราจะเรียนรู้เกี่ยวกับ Bitmasking และ Dynamic Programming แล้วค่อยแก้ปัญหาที่เกี่ยวข้อง ซึ่งจะช่วยแก้ข้อสงสัยเกี่ยวกับการนำไปใช้ Bitmask หรือที่เรียกว่า mask คือลำดับของ N-bits ที่เข้ารหัส subset ของคอลเลกชันของเรา องค์ประกอบของ mask สามารถเป็น set หรือ not set (เช่น 0 หรือ 1) ซึ่งแสดงถึงค

  16. Bitonic Sort ใน C++

    Bitonic Sort เป็นอัลกอริทึมการจัดเรียงแบบขนาน (parallel sorting algorithm) ที่สร้างขึ้นสำหรับการนำไปใช้งานที่ดีที่สุด และมีการใช้งานเหมาะสมที่สุดกับฮาร์ดแวร์และ parallel processor array มันไม่ใช่วิธีที่มีประสิทธิภาพที่สุดเมื่อเทียบกับ Merge Sort แต่มันดีสำหรับการนำไปใช้แบบขนาน เนื่องจากลำดับการเปรี

  17. การจัดการบิต (Bit Manipulation) เทคนิคสำคัญใน C++

    มาทบทวนเรื่องบิตและบิตวائزออเปอเรเตอร์ (bitwise operators) ให้สั้นๆ กันก่อน Bit (บิต) คือ ตัวเลขฐานสอง (binary digit) เป็นหน่วยข้อมูลเล็กที่สุดที่คอมพิวเตอร์เข้าใจได้ มีค่าได้เพียง 2 ค่า คือ 0 (ปิด/OFF) และ 1 (เปิด/ON) บิตวائزออเปอเรเตอร์ คือ โอเปอเรเตอร์ที่ทำงานระดับบิตในโปรแกรม ใช้สำหรับจัดการบิ

  18. Bitwise AND (&) ของช่วงตัวเลขใน C++

    ในปัญหานี้ เราได้รับค่าจำนวนเต็ม 2 ค่า a และ b ภารกิจคือการหา bitwise AND (&) ของช่วงจาก a ถึง b หมายความว่าเราต้องหาค่าของ a & a+1 & a+2 & ... b-1 & b ตัวอย่างเพื่อเข้าใจปัญหา อินพุต − a = 3, b = 8 เอาต์พุต − 0 คำอธิบาย − 3 & 4 & 5 & 6 & 7 & 8 = 0 วิธีง่ายค

  19. Bitwise AND ของ N สตริงไบนารีใน C++

    ในปัญหานี้ เราได้รับอาร์เรย์ bin[] ขนาด n ของสตริงไบนารี ภารกิจคือการสร้างโปรแกรมเพื่อหา Bitwise AND (&) ของ N สตริงไบนารี ที่นี่ เราจะนำตัวเลขทั้งหมดมาหา bitwise AND ของพวกมัน คือ bin[0] & bin[1] & ... bin[n-2] & bin[n] ตัวอย่างเพื่อเข้าใจปัญหา อินพุต − bin[] = {1001, 11001, 01010

  20. Bitwise AND ของ Sub-array ที่ใกล้เคียง K มากที่สุดใน C++

    ในปัญหานี้ เราได้รับอาร์เรย์ arr[] ขนาด n และจำนวนเต็ม k ภารกิจคือการหา subarray จากดัชนี i ถึง j และคำนวณ bitwise AND ขององค์ประกอบทั้งหมดของมัน หลังจากนั้นพิมพ์ค่าต่ำสุดของ abs(K - (bitwise AND ของ subarray)) ตัวอย่างเพื่อเข้าใจปัญหา อินพุต − arr[] = {5, 1}, k = 2 เอาต์พุต − เพื่อแก้ปัญหานี้ สาม

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:202/301  20-คอมพิวเตอร์/Page Goto:1 196 197 198 199 200 201 202 203 204 205 206 207 208