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

    เราได้รับจำนวนสองจำนวน x และ y งานคือการหาตัวประกอบเฉพาะร่วม (common prime factors) ของทั้งสองจำนวน ตัวอย่าง Input − x = 10, y = 20 Output − Common prime factors: 2 5 Input − x = 34, y = 12 Output − Common prime factors: 2 แนวทางการแก้ปัญหา หา GCD (ม.ร.ท.) ของ x และ y ใช้ Sieve หาจำนวนเฉพาะถึงค่า

  2. นับจำนวนน้อยกว่า 10⁶ ที่มีตัวประกอบเฉพาะน้อยที่สุดเป็น N ใน C++

    เราได้รับจำนวนเฉพาะ num งานคือการนับจำนวนเต็มน้อยกว่า 10⁶ ที่มีตัวประกอบเฉพาะน้อยที่สุด (least prime factor) เท่ากับ num ตัวอย่าง Input − num = 7 Output − 38095 Input − num = 3 Output − 166667 แนวทางการแก้ปัญหา (Modified Sieve) สร้าง sieve ปกติ แต่เพิ่มการนับ: s_count[i] = จำนวนที่มี LPF = i ในลู

  3. นับและหาผลรวมของจำนวนประกอบในอาร์เรย์ใน C++

    เราได้รับอาร์เรย์ของจำนวนเต็มบวก งานคือการนับและหาผลรวมของจำนวนประกอบ (composite numbers) ในอาร์เรย์ จำนวนประกอบคืออะไร? จำนวนเต็มที่ไม่ใช่จำนวนเฉพาะและไม่ใช่ 1 (เพราะ 1 ไม่ใช่เฉพาะและไม่ใช่ประกอบ) เช่น 4, 6, 8, 9, 10, 12, 14, 15... ตัวอย่าง Input − array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} Output

  4. นับตัวอักษรที่อยู่ตำแหน่งเท่ากับลำดับตัวอักษรภาษาอังกฤษใน C++

    เราได้รับสตริงที่มีตัวอักษรพิมพ์ใหญ่และเล็ก งานคือการนับตัวอักษรที่อยู่ในตำแหน่งดัชนี (index) เท่ากับลำดับในตัวอักษรภาษาอังกฤษ (A=1, B=2, ...) ตัวอย่าง Input − String str = eBGD Output − Count is: 2 คำอธิบาย − B(ดัชนี 1, ลำดับ 2) และ D(ดัชนี 3, ลำดับ 4) ตรงกัน (ใช้ 0-indexed: i == str[i]-A หรือ a)

  5. นับตัวอักษรในสตริงที่มีค่า ASCII เป็นจำนวนเฉพาะใน C++

    เราได้รับสตริงที่มีตัวอักษรพิมพ์ใหญ่และเล็ก งานคือการนับตัวอักษรที่มีค่า ASCII เป็นจำนวนเฉพาะ ค่า ASCII A-Z: 65-90 | a-z: 97-122 ตัวอย่าง Input − string str = Aebg Output − count is: 2 คำอธิบาย − A(65) ไม่ใช่เฉพาะ, e(101) เป็นเฉพาะ, b(98) ไม่ใช่, g(103) เป็นเฉพาะ รวม 2 ตัว Input − string str = GO

  6. Count Hexadecimal Number: นับตัวเลขฐานสิบหกในช่วงใน C++

    ปัญหา กำหนดช่วง [start, end] นับจำนวน Hexadecimal Digits (A-F) ที่ปรากฏในตัวเลขทุกตัวในช่วงนี้ Hexadecimal: 0-9, A(10), B(11), C(12), D(13), E(14), F(15) ตัวอย่าง: start=10, end=13 → 10=A, 11=B, 12=C, 13=D → 4 ตัว แนวคิด ตัวเลข 10-15: เป็น Hex Digit เดียว → นับ 1 ต่อตัว 15: แปลงเป็น Base-16 แล้

  7. นับตัวอักษรที่มีเพื่อนบ้านด้านซ้ายและขวาเหมือนกันใน C++

    เราได้รับสตริง งานคือการนับตัวอักษรที่มีเพื่อนบ้านทั้งสองข้าง (ซ้ายและขวา) เป็นตัวอักษรเดียวกัน โดยตัวอักษรแรกและตัวสุดท้ายจะนับเสมอเพราะมีเพื่อนบ้านเพียงข้างเดียว ตัวอย่าง Input − string str = poiot Output − count is 3 คำอธิบาย − p (ตัวแรก), t (ตัวสุดท้าย), i (เพื่อนบ้านซ้ายขวาเป็น o ทั้งคู่) รวม

  8. นับชุดของสามตัว (Triplets) ที่ผลรวมเป็นกำลังสามสมบูรณ์ใน C++

    เราได้รับอาร์เรย์ของจำนวนเต็ม n ตัว งานคือการนับชุดของสามตัว (triplets) ที่ผลรวมเป็นกำลังสามสมบูรณ์ (perfect cube) กำลังสามสมบูรณ์คืออะไร? จำนวนที่เป็นกำลังสามของจำนวนเต็ม เช่น 1, 8, 27, 64, 125... (1³, 2³, 3³, 4³, 5³...) เงื่อนไข: ผลรวมของ triplet อยู่ในขอบเขต 15000 ดังนั้นมีกำลังสามที่เป็นไปได้เพ

  9. นับจำนวนโหนดในรายการเชื่อมโยงแบบวงกลมใน C++

    เราได้รับรายการเชื่อมโยงแบบวงกลม (Circular Linked List) งานคือการนับจำนวนโหนดทั้งหมดในรายการ รายการเชื่อมโยงแบบวงกลม โหนดสุดท้ายชี้กลับไปที่โหนดแรก สามารถเป็น Singly หรือ Doubly Linked List ได้ ในตัวอย่างนี้ใช้ Singly Linked List ตัวอย่าง Input − nodes: 20, 1, 2, 3, 4, 5 Output − count of nodes: 6

  10. นับโหนดที่ไม่ใช่ใบในต้นไม้แบบทวิภาคใน C++

    เราได้รับต้นไม้แบบทวิภาค (Binary Tree) งานคือการนับจำนวนโหนดที่ไม่ใช่ใบ (non-leaf nodes) ซึ่งหมายถึงโหนดที่มีลูกอย่างน้อยหนึ่งข้าง โครงสร้างต้นไม้แบบทวิภาค โหนดแต่ละตัวมีสูงสุด 2 ลูก (ซ้ายและขวา) โหนดที่ไม่ใช่ใบเรียกว่าโหนดพาเรนต์ (parent nodes) ตัวอย่าง Input − ต้นไม้ที่มีโหนด 27, 14, 35 เป็นโหนด

  11. นับและแสดงอักษรที่ค่า ASCII อยู่ในช่วง [l, r] ใน C++

    เราได้รับสตริงและช่วงค่า ASCII [l, r] งานคือการนับและแสดงอักษรในสตริงที่มีค่า ASCII อยู่ในช่วงที่กำหนด ตารางค่า ASCII A-Z: 65-90 | a-z: 97-122 ตัวอย่าง Input − String str = point First = 111, Last = 117 Output − characters in range: p, o, t Count: 3 คำอธิบาย − p(112), o(111), t(116) อยู่ในช่วง [

  12. นับและแสดงอักษรที่ค่า ASCII ไม่อยู่ในช่วง [l, r] ใน C++

    เราได้รับสตริงและช่วงค่า ASCII [l, r] งานคือการนับและแสดงอักษรในสตริงที่มีค่า ASCII ไม่อยู่ในช่วงที่กำหนด ตารางค่า ASCII A-Z: 65-90 | a-z: 97-122 ตัวอย่าง Input − String str = point First = 111, Last = 117 Output − characters not in range: i, n Count: 2 คำอธิบาย − i (105) และ n (110) ไม่อยู่ในช่

  13. นับจำนวนองค์ประกอบที่แตกต่างกันในอาร์เรย์ใน C++

    เราได้รับอาร์เรย์ที่ไม่ได้เรียงลำดับและมีค่าซ้ำกัน งานคือการนับจำนวนองค์ประกอบที่แตกต่างกัน (distinct elements) ตัวอย่าง Input − int arr[] = {1, 1, 2, 3, 3, 4, 4} Output − count is 4 คำอธิบาย − ค่าที่แตกต่างกันคือ 1,2,3,4 รวม 4 ค่า Input − int arr[] = {1, 2, 3, 4, 5, 5, 5, 5} Output − count is 5 ค

  14. นับองค์ประกอบที่อยู่ในอาร์เรย์แรกแต่ไม่อยู่ในอาร์เรย์ที่สองใน C++

    เราได้รับอาร์เรย์สองชุด งานคือการนับจำนวนองค์ประกอบที่ปรากฏในอาร์เรย์แรกแต่ไม่อยู่ในอาร์เรย์ที่สอง (คำนึงถึงความถี่) ตัวอย่าง Input − int arr_1[] = {1, 2, 3, 4} Int arr_2[] = {1, 5, 6, 7, 8} Output − count is 3 คำอธิบาย − ค่า 1 อยู่ในทั้งสองอาร์เรย์ จึงไม่นับ เหลือ 2,3,4 รวม 3 ตัว Input − int ar

  15. นับจำนวนองค์ประกอบระหว่างสองค่าที่กำหนดในอาร์เรย์ใน C++

    เราได้รับอาร์เรย์ของจำนวนเต็มและค่าสองค่า start และ end งานคือการนับจำนวนองค์ประกอบที่อยู่ระหว่าง start และ end ในอาร์เรย์ โดยพิจารณาตำแหน่งการปรากฏครั้งแรกของ start และครั้งสุดท้ายของ end ตัวอย่าง Input − int arr[] = {1, 2, 3, 4, 5, 6, 7} Start = 1, End = 7 Output − count is 5 คำอธิบาย − ช่วง 1

  16. นับคู่ที่หารลงตัวในอาร์เรย์ใน C++

    เราได้รับอาร์เรย์ของจำนวนเต็ม งานคือการนับจำนวนคู่ในอาร์เรย์ที่สมาชิกหนึ่งหารอีกสมาชิกหนึ่งลงตัว ตัวอย่าง Input − int arr[] = {1, 2, 3, 6} Output − count is 4 คำอธิบาย − คู่ที่หารลงตัว: (1,2), (1,3), (1,6), (3,6) รวม 4 คู่ Input − int arr[] = {2, 5, 10} Output − count is 2 คำอธิบาย − คู่ที่หารลงตั

  17. นับจำนวนองค์ประกอบที่หารด้วยอย่างน้อยหนึ่งตัวในอีกอาร์เรย์หนึ่งใน C++

    เราได้รับอาร์เรย์สองชุด arr_1[] และ arr_2[] งานคือการนับจำนวนองค์ประกอบใน arr_1 ที่หารด้วยอย่างน้อยหนึ่งองค์ประกอบใน arr_2 ลงตัว ตัวอย่าง Input − int arr_1[] = {1, 2, 3, 4, 5} arr_2[] = {2, 6, 12, 15} Output − count is 2 คำอธิบาย − ใน arr_1 มี 5 องค์ประกอบ arr_2 มี 4 องค์ประกอบ องค์ประกอบใน arr_1

  18. นับจำนวนคู่ที่แตกต่างกันที่ผลรวมมีอยู่ในอาร์เรย์เดียวกันใน C++

    เราได้รับอาร์เรย์ของจำนวนเต็ม และงานคือการนับจำนวนคู่ที่แตกต่างกัน (distinct pairs) ในอาร์เรย์ที่ผลรวมของคู่นั้นก็มีอยู่ในอาร์เรย์เดียวกันด้วย ข้อสังเกตสำคัญ คู่จะนับเพียงครั้งเดียวไม่สนใจลำดับ เช่น (3,2) และ (2,3) นับเป็น 1 คู่ ถ้ามีตัวเลขซ้ำหลายครั้ง ให้พิจารณาเพียง 2 ครั้งเพื่อสร้างคู่เดียว เช่

  19. นับคู่ที่แตกต่างกันจากสองอาร์เรย์ที่มีผลรวมตัวเลขเท่ากันใน C++

    เราได้รับอาร์เรย์สองชุด arr_1[] และ arr_2[] ที่มีค่าจำนวนเต็ม งานคือการนับจำนวนคู่ที่แตกต่างกัน (distinct pairs) ที่มีผลรวมของตัวเลข (sum of digits) เท่ากัน โดยเลือกค่าหนึ่งจาก arr_1 และอีกค่าหนึ่งจาก arr_2 ตัวอย่าง Input − int arr_1[] = {1, 22, 42, 17} Int arr_2[] = {1, 31, 6, 8} Output − count

  20. นับจำนวนองค์ประกอบในอาร์เรย์ที่หารผลรวมขององค์ประกอบอื่นๆ ลงตัวใน C++

    เราได้รับอาร์เรย์ของค่าจำนวนเต็ม และงานคือการคำนวณจำนวนองค์ประกอบในอาร์เรย์ที่สามารถหารผลรวมขององค์ประกอบอื่นๆ ทั้งหมดลงตัวได้ ตัวอย่าง Input − int arr_1[] = {9, 6, 3} Output − count is 3 คำอธิบาย − ผลรวมของ 9+6 = 15 หารด้วย 3 ลงตัว, ผลรวมของ 9+3 = 12 หารด้วย 6 ลงตัว, และ 6+3 = 9 หารด้วย 9 ลงตัว ดั

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:173/301  20-คอมพิวเตอร์/Page Goto:1 167 168 169 170 171 172 173 174 175 176 177 178 179