Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. ผลรวมอนุกรม 1 + x/1 + x²/2 + x³/3 + ... + xⁿ/n ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรม 1 + x/1 + x²/2 + x³/3 + ... + xⁿ/n โดยกำหนดค่า x และ n ตัวอย่าง Input: x = 2, n = 4 Output: 11.666... Explanation: 1 + 2/1 + 4/2 + 8/3 + 16/4 = 1 + 2 + 2 + 2.666 + 4 = 11.666 ตัวอย่างโค้ด C++ #include <iostream> #include <math.h> #include <iomanip> u

  2. ผลรวมอนุกรมเลขสามเหลี่ยม 1, 3, 6, 10, ... ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรมเลขสามเหลี่ยม (Triangular Numbers): 1, 3, 6, 10, ... พจน์ที่ n: Tₙ = n(n+1)/2 ตัวอย่าง Input: n = 4 Output: 20 Explanation: T₁+T₂+T₃+T₄ = 1+3+6+10 = 20 วิธีแก้ปัญหา วิธีลูป - O(n) for (int i=1; i<=n; i++) sum += i*(i+1)/2; วิธีสูตรคณิตศาสตร์ - O(1) ผลรวม = ⅙ n(n+

  3. ผลรวมอนุกรม 1/(1×2) + 1/(2×3) + ... + 1/(n×(n+1)) ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรม 1/(1×2) + 1/(2×3) + 1/(3×4) + ... + 1/(n×(n+1)) ตัวอย่าง Input: n = 3 Output: 0.75 Explanation: 1/2 + 1/6 + 1/12 = 6/12 + 2/12 + 1/12 = 9/12 = 3/4 = 0.75 วิธีแก้ปัญหา วิธีลูปธรรมดา - O(n) double sum = 0; for (int i = 1; i <= n; i++) sum += 1.0 / (i * (i+1)); วิธ

  4. ผลรวมอนุกรม 1¹ + 2² + 3³ + ... + nⁿ ด้วย Recursion ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรม 1¹ + 2² + 3³ + ... + nⁿ โดยใช้การเรียกฟังก์ชันซ้ำ (Recursion) ตัวอย่าง Input: n = 4 Output: 30 Explanation: 1¹ + 2² + 3³ + 4⁴ = 1 + 4 + 27 + 256 = 288 (หมายเหตุ: ตัวอย่างเดิมมีข้อผิดพลาด 1+4+9+16=30 คือผลรวมกำลังสอง ไม่ใช่กำลังตัวเอง) ตัวอย่างโค้ด C++ (Iterative) #inc

  5. ผลรวมอนุกรม 2 + (2+4) + (2+4+6) + ... + (2+4+...+2n) ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรม: 2 + (2+4) + (2+4+6) + ... + (2+4+...+2n) ตัวอย่าง Input: n = 3 Output: 20 Explanation: (2) + (2+4) + (2+4+6) = 2 + 6 + 12 = 20 วิธีแก้ปัญหา วิธี Nested Loop - O(n²) for i=1 to n: for j=1 to i: sum += 2*j วิธีสูตรคณิตศาสตร์ - O(1) พจน์ที่ n: aₙ = n² + n

  6. จำนวนบิชอปสูงสุดบนกระดานหมากรุก N×N ใน C++

    ภาพรวมปัญหา หาจำนวนบิชอป (Bishop) สูงสุดที่วางบนกระดานหมากรุก N×N ได้ โดยที่ไม่มีบิชอปสองตัวโจมตีกัน ตัวอย่าง Input: N = 2 Output: 2 Input: N = 5 Output: 8 หลักการ บิชอปเดินทางแนวทแยง 2×(N-1) วางบนขอบสองด้านตรงข้าม (สีต่างกัน) ตัวอย่างโค้ด C++ #include <iostream> int totalBishops(int

  7. จำนวน 1 หรือ 0 ติดต่อกันสูงสุดในอาร์เรย์ไบนารีวนใน C++

    ภาพรวมปัญหา หาจำนวน 1 หรือ 0 ที่ติดต่อกันมากที่สุดในอาร์เรย์แบบวน (Circular Array) ซึ่งถือว่าอิลิเมนต์ตัวแรกอยู่ติดกับตัวสุดท้าย ตัวอย่าง Input: Arr[] = {1,1,0,1,0,1,0,1,1,1} Output: Max consecutive 1s = 5, Max consecutive 0s = 1 Explanation: 1s ตรง index 7-9 และ 0-1 รวม 5 ตัว Input: Arr[] = {0,0

  8. ตัวอักษรที่ซ้ำติดต่อกันมากที่สุดในสตริงใน C++

    ภาพรวมปัญหา หาตัวอักษรที่มีการซ้ำติดต่อกัน (consecutive repeating) ยาวที่สุดในสตริง ตัวอย่าง Input: abbbabbbbcdd Output: b Explanation: b ซ้ำติดต่อกัน 4 ครั้ง (bbbb) Input: aabbcdeeeeed Output: e Explanation: e ซ้ำติดต่อกัน 5 ครั้ง (eeeee) แนวทางแก้ปัญหา วนลูปสตริง เปรียบเทียบตัวอักษรปัจจุบันกั

  9. จำนวนเฉพาะติดต่อกันสูงสุดในอาร์เรย์ใน C++

    ภาพรวมปัญหา หาลำดับจำนวนเฉพาะที่ติดต่อกันยาวที่สุดในอาร์เรย์ ตัวอย่าง Input: Arr[] = {1, 3, 5, 2, 6, 7, 13, 4, 9, 10} Output: 3 Explanation: จำนวนเฉพาะ: 3,5,2,7,13 ติดต่อกัน: {3,5,2} และ {7,13} ยาวสุด = 3 Input: Arr[] = {5, 7, 17, 27, 31, 21, 41} Output: 3 Explanation: {5, 7, 17} ติดต่อกัน 3 ตัว

  10. ความยาวซับอาร์เรย์สูงสุดที่ผลรวมเป็นเลขคู่ใน C++

    ภาพรวมปัญหา หาซับอาร์เรย์ที่ยาวที่สุดซึ่งผลรวมของอิลิเมนต์เป็นเลขคู่ ตัวอย่าง Input: Arr[] = {2, 3, 5, 2, 6, 7} Output: 4 Subarray: {5, 2, 6, 7} sum = 20 (even) Input: Arr[] = {5, 7, 7, 3, 4} Output: 4 Subarray: {5, 7, 7, 3} sum = 22 (even) แนวทางแก้ปัญหา ตอบคือ N หาตัวเลขคี่ตัวแรกและตัวสุดท้

  11. เพิ่มผลรวมผลคูณดีกรีระหว่างจุดยอดในต้นไม้ใน C++

    ภาพรวมปัญหา สร้างต้นไม้ (Tree) ขนาด N ให้ผลรวมของ degree(x) × degree(y) สำหรับทุกคู่มี序 (x,y) โดย x≠y มีค่าสูงสุด ตัวอย่าง Input: N = 5 Output: 50 Tree: 1-2-3-4-5 (Path graph) Degrees: 1,2,2,2,1 Sum = 50 Input: N = 7 Output: 122 แนวทางแก้ปัญหา ผลรวมดีกรีทั้งหมดในต้นไม้ = 2N - 2 เพื่อให้ผลคูณสูง

  12. ขยายขนาดอาร์เรย์สูงสุดโดยลบ K ซับอาร์เรย์ให้เหลือเฉพาะจำนวนเฉพาะใน C++

    ภาพรวมปัญหา ลบ K ซับอาร์เรย์พอดีจากอาร์เรย์ Arr[] ขนาด N ให้อิลิเมนต์ที่เหลือเป็นจำนวนเฉพาะทั้งหมด และขนาดอาร์เรย์ที่เหลือต้องมากที่สุด ตัวอย่าง Input: Arr[] = {4, 3, 3, 4, 3, 4, 3}, K = 2 Output: 3 Explanation: ลบ Arr[0] และ Arr[3..5] เหลือ {3,3,3} Input: Arr[] = {7, 6, 2, 11, 8, 3, 12}, K = 2 O

  13. จำนวนตัวเลข Automorphic ติดต่อกันสูงสุดในอาร์เรย์ใน C++

    ภาพรวมปัญหา หาจำนวนตัวเลข Automorphic ที่ติดต่อกันมากที่สุดในอาร์เรย์ Automorphic Number: ตัวเลขที่ยกกำลังสองแล้วท้ายตรงกับตัวเลขเดิม (เช่น 5²=25, 6²=36, 25²=625) ตัวอย่าง Input: arr[] = {5, 3, 625, 6, 8, 1} Output: 2 Explanation: Automorphic numbers: 5, 625, 6, 1 ติดต่อกันมากสุด: {625, 6} = 2 ตัว

  14. ผลรวมของอนุกรม 2⁰ + 2¹ + 2² + ... + 2ⁿ ใน C++

    ภาพรวมปัญหา หาผลรวมของอนุกรมกำลังสอง: 2⁰ + 2¹ + 2² + ... + 2ⁿ ตัวอย่าง Input: n = 6 Output: 127 Explanation: 1 + 2 + 4 + 8 + 16 + 32 + 64 = 127 วิธีแก้ปัญหา วิธีลูปธรรมดา - O(n) int sum = 0; for (int i = 0; i <= n; i++) sum += pow(2, i); วิธีสูตรคณิตศาสตร์ - O(1) ผลรวม = 2^(n+1) - 1 int cal

  15. ค่าคาดหมายของจุดสูงสุดจากการทอยลูกเต๋า N ครั้งใน C++

    ภาพรวมปัญหา คำนวณค่าคาดหมาย (Expected Value) ของจำนวนจุดสูงสุด ที่ได้จากการทอยลูกเต๋า M หน้า N ครั้ง ตัวอย่าง Input: M = 2, N = 3 Output: 1.875 Explanation: ลูกเต๋า 2 หน้า {1,2}, ทอย 3 ครั้ง มี 8 กรณี ค่าสูงสุดของแต่ละกรณี: 1,2,2,2,2,2,2,2 ค่าคาดหมาย = (1+2×7) × 1/8 = 1.875 สูตรคณิตศาสตร์ ความน่า

  16. จำนวนกลุ่มขนาด 3 สูงสุดจาก 2 ประเภทไอเทมใน C++

    ภาพรวมปัญหา หาจำนวนกลุ่มขนาด 3 สูงสุด ที่สร้างได้จาก N ไอเทมประเภท A และ M ไอเทมประเภท B โดยแต่ละกลุ่มต้องมีทั้ง 2 ประเภทอย่างน้อย 1 ชิ้น ตัวอย่าง Input: N = 3, M = 5 Output: 2 Groups: (1A,2B), (1A,2B) ใช้ 2A และ 4B Input: N = 5, M = 9 Output: 4 แนวทางแก้ปัญหา (4 กรณี) M ≥ 2N: ตอบ = N N ≥ 2M: ต

  17. จำนวน 1 สูงสุดในเมทริกซ์ N×N ภายใต้เงื่อนไขใน C++

    ภาพรวมปัญหา หาจำนวน 1 สูงสุดในเมทริกซ์ไบนารี N×N โดยที่ทุกซับเมทริกซ์ X×X ต้องมี 0 อย่างน้อย 1 ตัว (X ≤ N) ตัวอย่าง Input: N = 4, X = 2 Output: 12 Matrix: 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 Input: N = 7, X = 3 Output: 45 แนวทางแก้ปัญหา จำนวน 0 ขั้นต่ำที่ต้องมี = (N / X)² (วาง 0 เป็นกริดห่างกัน X)

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

    ภาพรวมปัญหา หาจำนวนสี่เหลี่ยมขนานสูงสุดที่สร้างได้จาก N เส้นตรง โดยแต่ละเส้นใช้ได้สูงสุด 1 สี่เหลี่ยมขนาน ตัวอย่าง Input: Arr[] = {8, 3, 1, 3, 8, 7, 1, 3, 5, 3} Output: 2 Explanation: สี่เหลี่ยมขนาน 2 รูป: ด้าน (8,1,8,1) และ (3,3,3,3) Input: Arr[] = {7, 9, 9, 7} Output: 1 แนวทางแก้ปัญหา นับความ

  19. จำนวนชิ้นสูงสุดจากการตัด N ครั้งใน C++

    ภาพรวมปัญหา คำนวณจำนวนชิ้นสี่เหลี่ยมจัตุรัส/สี่เหลี่ยมผืนผ้าขนาดเท่ากันสูงสุด ที่ได้จากการตัดกระดาษสี่เหลี่ยม N ครั้ง (ตัดแนวนอนหรือแนวตั้ง) ตัวอย่าง (3+1)×(4+1) = 20 ชิ้น หลักการ เพื่อให้ได้ชิ้นมากที่สุด ต้องตัดแนวนอนและแนวตั้งให้เท่ากันที่สุด ถ้า N คู่: แนวนอน = แนวตั้ง = N/2 ถ้า N คี่: แนวนอ

  20. จำนวนส่วนเส้นสูงสุดที่มีความยาว a, b, c ใน C++

    ภาพรวมปัญหา หาจำนวนส่วนเส้นสูงสุดที่มีความยาว a, b, c ที่สามารถสร้างได้จากจำนวนเต็มบวก N ตัวอย่าง Input: N = 8, a = 3, b = 1, c = 2 Output: 8 Explanation: ใช้ส่วนเส้นความยาว 1 จำนวน 8 ส่วน Input: N = 13, a = 2, b = 7, c = 3 Output: 6 แนวทางแก้ปัญหา (Dynamic Programming) สร้างอาร์เรย์ MaxSeg[N+1

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:209/301  20-คอมพิวเตอร์/Page Goto:1 203 204 205 206 207 208 209 210 211 212 213 214 215