Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. พิมพ์ลำดับทั้งหมดที่เริ่มจาก n และความต่างติดต่อกันจำกัดด้วย k ใน C++

    ในปัญหานี้ เราจะได้รับตัวแปร 3 ตัว คือ n, s, และ k และต้องพิมพ์ลำดับทั้งหมดที่เป็นไปได้ที่เริ่มจากตัวเลข n และมีความยาว s โดยมีความต่างสัมบูรณ์ระหว่างองค์ประกอบติดต่อกันน้อยกว่า k ตัวอย่างเพื่อความเข้าใจ Input: n = 3, s = 3, k = 2 Output: 3 3 3 3 3 4 3 3 2 3 4 4 3 4 5 3 4 3 3 2 2 3 2 3 3 2 1 ในปั

  2. พิมพ์ลำดับทั้งหมดของความยาวที่กำหนดใน C++

    ในปัญหานี้ เราจะได้รับค่าจำนวนเต็ม 2 ค่า คือ k และ n และต้องพิมพ์ลำดับทั้งหมดที่มีความยาว k จากตัวเลข 1 ถึง n เรียงตามลำดับ ตัวอย่างเพื่อความเข้าใจ Input: k = 2 ; n = 3 Output: 1 1 1 2 1 3 2 1 2 2 2 3 3 1 3 2 3 3 ในปัญหานี้ เราต้องพิมพ์ลำดับตามที่ระบุข้างต้น วิธีง่ายคือเพิ่มค่าจำนวนเต็มของลำดับจ

  3. พิมพ์ Semi-Prime Numbers ทั้งหมดน้อยกว่าหรือเท่ากับ N ใน C++

    ในปัญหานี้ เราจะได้รับจำนวนเต็ม N และต้องพิมพ์ Semi-Prime Numbers ทั้งหมดที่น้อยกว่าหรือเท่ากับ N ก่อนแก้ปัญหา เรามาทำความเข้าใจก่อนว่า Semi-Prime Number คืออะไร Semi-Prime Number คือ จำนวนที่มีค่าเป็นผลคูณของจำนวนเฉพาะ 2 ตัวที่ต่างกัน ตัวอย่าง 21 = 3×7 เป็น Semi-Prime Number 25 = 5×5 ไม่ใช่ Sem

  4. พิมพ์ Safe Primes ทั้งหมดต่ำกว่า N ใน C++

    ในปัญหานี้ เราจะได้รับจำนวนเต็ม N และต้องพิมพ์ Safe Prime Numbers ทั้งหมดที่มีค่าน้อยกว่า N Safe Prime Number คือจำนวนเฉพาะที่สามารถแสดงได้ในรูป [(2 × p) + 1] โดยที่ p ก็เป็นจำนวนเฉพาะเช่นกัน ตัวอย่าง - 5[(2×2)+1], 7[(2×3)+1] ตัวอย่างเพื่อความเข้าใจ Input: N = 12 Output: 5 7 11 เพื่อแก้ปัญหานี้

  5. พิมพ์เส้นทางจากรากถึงใบพร้อมตำแหน่งสัมพัทธ์ใน C++

    ในปัญหานี้ เราจะได้รับ Binary Tree และต้องพิมพ์เส้นทางทั้งหมดจาก รากถึงใบของต้นไม้ พร้อมเพิ่ม underscore  _  เพื่อแสดงตำแหน่งสัมพัทธ์ของโหนด ตัวอย่างเพื่อความเข้าใจ Input - Output - _ _ 3 _ 9 1 _3 9 _7 3 _ 4 _ _ 2 3 9 4 1 7 6 2 3 _ 4 6 เพื่อแก้ปัญหานี้ เราจะใช้แนวคิดของ vertical orde

  6. พิมพ์ Proth Primes ทั้งหมดจนถึง N ใน C++

    ในปัญหานี้ เราจะได้รับจำนวนเต็ม N และต้องพิมพ์ Proth Prime Numbers ทั้งหมดที่น้อยกว่าหรือเท่ากับ N Proth Prime Number Proth Prime Number คือจำนวนเต็มบวกที่สามารถแสดงได้ในรูป n = k × 2n + 1 โดยที่ k เป็นจำนวนเต็มบวกคี่ และ n เป็นจำนวนเต็มบวก และทั้งสองต้องเป็นไปตามเงื่อนไข 2n k ตัวอย่าง - 3, 5, 13

  7. พิมพ์ Prime Quadruplet ทั้งหมดของตัวเลขน้อยกว่ามันใน C++

    ในปัญหานี้ เราจะได้รับจำนวนเต็มบวก N และต้องพิมพ์ Prime Quadruplet ทั้งหมดที่น้อยกว่าหรือเท่ากับ N Prime Quadruplet คือ เซตของจำนวนเฉพาะ 4 ตัวที่คำนวณได้จาก {p, p+2, p+6, p+8} ตัวอย่าง - 5 7 11 13 ตัวอย่างเพื่อความเข้าใจ Input: N = 15 Output: 5 7 11 13 เพื่อแก้ปัญหานี้ วิธีง่ายคือสร้าง quadruple

  8. พิมพ์จำนวนเฉพาะทั้งหมดน้อยกว่าหรือเท่ากับ N ใน C++

    ในปัญหานี้ เราจะได้รับตัวเลข N และต้องพิมพ์จำนวนเฉพาะทั้งหมดที่น้อยกว่าหรือเท่ากับ N ตัวอย่างเพื่อความเข้าใจ Input: 10 Output: 2 3 5 7 จำนวนเฉพาะ คือ จำนวนที่หารได้เฉพาะ 1 และตัวมันเอง เช่น 2, 3 วิธีง่ายคือวนลูปจาก 2 ถึง N และตรวจสอบว่าแต่ละตัวหารลงตัวหรือไม่ ถ้าไม่ลงตัวก็เป็นจำนวนเฉพาะ แต่วิธีน

  9. พิมพ์เฉพาะตัวประกอบและกำลังของพวกเขาใน C++

    ในปัญหานี้ เราจะได้รับตัวเลข N และต้องหาตัวประกอบเฉพาะที่ไม่ซ้ำกันทั้งหมดและกำลังของพวกเขาที่หารตัวเลขนั้นลงตัว ตัวอย่างเพื่อความเข้าใจ Input: 55 Output: 5 power 1 11 power 1 คำอธิบาย: 55 หารด้วย 5 และ 11 ลงตัว เพื่อแก้ปัญหานี้ วิธีง่ายคือการหาตัวประกอบเฉพาะของ N จากนั้นหากำลังของจำนวนเฉพาะที่หา

  10. พิมพ์คำทั้งหมดที่เป็นไปได้จากตัวเลขโทรศัพท์ใน C++

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

  11. พิมพ์ผลรวมของจำนวนติดต่อกันที่เท่ากับ N ใน C++

    ปัญหา ได้รับจำนวนเต็มบวก N พิมพ์ลำดับจำนวนติดต่อกัน (Consecutive Numbers) ทุกชุดที่ผลรวมเท่ากับ N เช่น N=15 → 1 2 3 4 5 และ 7 8 วิธีแก้ (Simple) บวกลำดับติดต่อกันจาก 1 ถึง N/2 พิมพ์ชุดที่ผลรวม = N ตัวอย่างโค้ด (Simple) #include <iostream> using namespace std; void printConsequtiveSum(int N)

  12. พิมพ์สตริงทั้งหมดที่สร้างได้จากการวางช่องว่างใน C++

    ปัญหา ได้รับสตริงหนึ่ง พิมพ์สตริงทั้งหมดที่สร้างได้จากการวางช่องว่างระหว่างตัวอักษร เช่น XYZ → XYZ, XY Z, X YZ, X Y Z วิธีแก้ หาทุกวิธีการวาง Space ใช้ Recursive: วาง Space ทีละตัว สร้างสตริงใหม่ ตัวอย่างโค้ด #include <iostream> #include <cstring> using namespace std; void printPatter

  13. พิมพ์สตริงความยาว k ทั้งหมดจากชุดตัวอักษร n ตัวใน C++

    ปัญหา ได้รับชุดตัวอักษร และจำนวนเต็มบวก k พิมพ์สตริงความยาว k ทั้งหมดที่สร้างได้จากชุดตัวอักษร เช่น set={x,y,z}, k=2 → xy, xz, yz (หมายเหตุ: ตัวอย่าง Output ในต้นฉบับดูเหมือนจะเป็น Permutation ไม่ใช่ Combination) วิธีแก้ จำนวนสตริงทั้งหมด = n^k ใช้ Recursive สร้างสตริงจากสตริงว่าง เพิ่มตัวอักษรทีละ

  14. พิมพ์เส้นทางทั้งหมดจากมุมซ้ายบนไปขวาล่างของเมทริกซ์ m×n ใน C++

    ปัญหา ได้รับเมทริกซ์ 2D ขนาด m×n พิมพ์เส้นทางทั้งหมดจากมุมซ้ายบน (0,0) ไปมุมขวาล่าง (m-1,n-1) เคลื่อนที่ได้แค่ Right และ Down ตัวอย่าง Input: 1 3 5 2 8 9 Output: 1 → 3 → 5 → 9 1 → 3 → 8 → 9 1 → 2 → 8 → 9 วิธีแก้ Recursive: จากเซลล์ปัจจุบัน เดิน Right และ Down พิมพ์เส้นทางเมื่อถึงขอบ ตัวอย่างโค้ด

  15. พิมพ์นิพจน์ทั้งหมดที่ให้ค่าเป้าหมายใน C++

    ปัญหา ได้รับสตริงตัวเลข 0-9 และค่าเป้าหมาย (Target) พิมพ์นิพจน์ที่ใส่ +, -, * ระหว่างหลักเลข ให้ค่าเท่ากับ Target เช่น 123, target=6 → 1+2+3, 1*2*3 วิธีแก้ สร้างนิพจน์โดยวาง Operator ทุกความเป็นไปได้ระหว่างหลักเลข ตรวจสอบผลลัพธ์กับ Target ใช้ Recursive Evaluate ถ้าหลักนำเป็น 0 ข้าม ตัวอย่างโค้ด #i

  16. พิมพ์ทุกชุดการจัดหมู่ r องค์ประกอบจากอาร์เรย์ขนาด n ใน C++

    ปัญหา ได้รับอาร์เรย์ขนาด n และจำนวนเต็มบวก r พิมพ์ทุกชุดการจัดหมู่ (Combinations) ขององค์ประกอบขนาด r ตัวอย่าง Input: {5,6,7,8}, r = 3 Output: {5,6,7}, {5,6,8}, {5,7,8}, {6,7,8} วิธีแก้ Fixed elements แล้ว Recursive/Loop หาชุดอื่นๆ ต้อง Fix แค่ n-r+1 ตัวแรก ตัวอย่างโค้ด (วิธีที่ 1: Fix และ Recur)

  17. แบ่งสตริงเป็นสตริงสมดุลใน C++

    ปัญหา สตริงสมดุล (Balanced String) คือสตริงที่มีจำนวน L และ R เท่ากัน กำหนดสตริงสมดุล s แบ่งเป็นสตริงสมดุลย่อยได้มากที่สุด คืนจำนวนสูงสุด เช่น RLRRLLRLRL → 4 (RL, RRLL, RL, RL) วิธีแก้ cnt = 0, ans = 0 ลูป i = 0 ถึง n-1: cnt = 0 ลูป j = i ถึง n-1: ถ้า s[j]==R cnt++ ไม่งั้

  18. ตรวจสอบว่าจุดข้อมูลอยู่ในเส้นตรงหรือไม่ใน C++

    ปัญหา ได้รับรายการจุดข้อมูล (x, y) ตรวจสอบว่าจุดเหล่านี้อยู่บนเส้นตรงเดียวกันหรือไม่ เช่น [(1,2),(2,3),(3,4),(4,5),(5,6),(6,7)] → อยู่เส้นตรง วิธีแก้ หาความชัน (Slope) ระหว่างจุดติดกัน เปรียบเทียบว่าทุกคู่มีความชันเท่ากันหรือไม่ ใช้ GCD ลดรูปเศษส่วนเพื่อหลีกเลี่ยง Floating Point ตัวอย่างโค้ด #incl

  19. หาคำตอบจำนวนเต็มบวกสำหรับสมการที่กำหนดใน C++

    ปัญหา ได้รับฟังก์ชัน f(x, y) หาคู่ (x, y) ทั้งหมดที่ f(x, y) = z โดย z กำหนดให้ x, y เป็นจำนวนเต็มบวก ฟังก์ชันเพิ่มขึ้นเรื่อยๆ: f(x,y) < f(x+1,y) และ f(x,y) < f(x,y+1) วิธีแก้ Brute Force: ลูป i=1..1000, j=1..1000 ถ้า f(i,j)==z เก็บคู่ (i,j) Function ID: 1 = Addition, 2 = Multiplication พร้อมค่า z

  20. เซลล์ที่มีค่าคี่ในเมทริกซ์ใน C++

    ปัญหา ได้รับ n, m ขนาดเมทริกซ์ เริ่มต้นเป็น 0 ทั้งหมด มี Indices indices[i] = [ri, ci] สำหรับแต่ละคู่ ให้เพิ่มทุกเซลล์ในแถว ri และคอลัมน์ ci ขึ้น 1 หาจำนวนเซลล์ที่มีค่าคี่หลังปรับค่าทุก indices วิธีแก้ odd = 0, x = จำนวนแถวของ indices สร้างเมทริกซ์ mat ลูปแต่ละ index: เพิ่มแถว ri และคอลัมน์ ci นับ

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:122/301  20-คอมพิวเตอร์/Page Goto:1 116 117 118 119 120 121 122 123 124 125 126 127 128