Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. โปรแกรม C++ หาคะแนนน้อยที่สุดที่ต้องทำเพื่อได้คะแนนรวม G

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ p และ c ทั้งคู่ D องค์ประกอบ และตัวเลข G ในการแข่งขันเขียนโปรแกรม แต่ละโจทย์มีคะแนนตามความยาก โจทย์ p[i] มีคะแนน 100*i p[1]+...+p[D] คือโจทย์ทั้งหมด ผู้ใช้มี total_score = base score + bonus Base score: ผลรวมคะแนนโจทย์ที่ทำได้ Bonus: ทำครบทุกโจทย์คะแนน 100*i ได้

  2. โปรแกรม C++ นับจำนวนชุดสูงสุดแบ่งโหนดกราฟที่ขอบเชื่อมชุดติดกัน

    คำอธิบายปัญหา สมมติว่าเรามีเมทริกซ์สมัยติดกันของกราฟ G ต้องการตรวจสอบว่าแบ่งโหนดเป็นชุดไม่ว่าง V1...Vk ได้ไหม ที่ทุกขอบเชื่อมโหนดจาก 2 ชุดที่ติดกัน ถ้าทำได้ ต้องการค่า k สูงสุด ตัวอย่าง: เมทริกซ์ 6x6 ตามตาราง ผลลัพธ์คือ 4 ขั้นตอนการแก้ปัญหา กำหนดอาร์เรย์ dp ขนาด 210 n := ขนาดเมทริกซ์ fl := 1, ans

  3. โปรแกรม C++ หาจำนวนบอมบ์น้อยที่สุดฆ่ามอนสเตอร์ทั้งหมด

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ X และ H ทั้งคู่ N องค์ประกอบ และตัวเลข D, A มีเรื่องราวว่าสุนัขจิ้งจอกเงินต่อสู้กับ N มอนสเตอร์ มอนสเตอร์ยืนแถว พิกัดตัวที่ i คือ X[i] พลังชีวิต H[i] สุนัขจิ้งจอกใช้บอมบ์ โยนที่พิกัด x จะทำลายมอนสเตอร์ในช่วง x-D ถึง x+D พลังชีวิตลดลง A เมื่อมอนสเตอร์ทุกตัวพลังชีว

  4. โปรแกรม C++ หาตัวเลขมากกว่าหรือเท่า A ที่ผลรวมหลักหาร 4 ลงตัว

    คำอธิบายปัญหา สมมติว่าเรามีตัวเลข A ต้องการหาตัวเลขที่น่าสนใจ (interesting number) ที่มากกว่าหรือเท่า A และใกล้ที่สุด ตัวเลขน่าสนใจคือตัวเลขที่ผลรวมหลักหาร 4 ลงตัว ตัวอย่าง: A = 432 ผลลัพธ์คือ 435 เพราะ 4+3+5=12 หาร 4 ลงตัว ขั้นตอนการแก้ปัญหา while (A / 1000 + A % 1000 / 100 + A % 100 / 10 + A %

  5. โปรแกรม C++ หาผลรวมเซลล์ที่โคมไฟส่องสว่างทั้งหมดในกริด

    คำอธิบายปัญหา สมมติว่าเรามีกริด H แถว W คอลัมน์ เซลล์แต่ละช่องสะอาดหรือสกปรก สามารถวางโคมไฟบนเซลล์สะอาดได้ โคมไฟส่องสว่าง 4 ทิศทาง จนกว่าจะถึงขอบกริดหรือเซลล์สกปรก (เซลล์สกปรกไม่สว่าง) โคมยังส่องสว่างเซลล์ที่วางไว้ด้วย G[i,j] = . คือสะอาด # คือสกปรก ให้ K เป็นจำนวนเซลล์สะอาด มี 2^K วิธีวางโคม สำหรั

  6. โปรแกรม C++ ตรวจสอบการจัดเรียงอาร์เรย์ให้สูตรคืนค่า m

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A n องค์ประกอบ และตัวเลข m ต้องการตรวจสอบว่าจัดเรียงอาร์เรย์ใหม่ได้ไหมที่: $$\mathrm{\sum_{i=1}^{n} \sum_{j=1}^{n}\frac{A[j]}{j} = m}$$ การหาร A[j]/j ไม่มีการปัดเศษ ตัวอย่าง: A = [2, 5, 1]; m = 8 ผลลัพธ์คือ True เพราะจัดเป็น [1, 2, 5] ได้ (1/1 + 2/2 + 5/3) + (2/

  7. โปรแกรม C++ นับนาทีที่ต้องรอให้เจอนักว่ายน้ำอย่างน้อย 1 คน

    คำอธิบายปัญหา สมมติว่าเรามีตัวเลข 4 ตัวคือ p, a, b และ c มีสระว่ายน้ำและนักว่ายน้ำ 3 คน ใช้เวลา a, b, c นาทีในการข้ามสระและกลับมา ตัวแรกอยู่ข้างซ้ายที่เวลา 0, a, 2a, 3a... ตัวที่สอง 0, b, 2b, 3b... ตัวที่สาม 0, c, 2c, 3c... ถ้าเราไปที่สระหลัง p นาที ต้องการหาเวลาที่ต้องรอขั้นต่ำเพื่อเจอนักว่ายน้ำอย

  8. โปรแกรม C++ นับคู่ l-r ที่ผล XOR เท่ากับผลรวม

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A N องค์ประกอบ ต้องการหาจำนวนคู่จำนวนเต็ม l และ r ที่ทำให้ A[l] XOR A[l+1] XOR ... XOR A[r] = A[l] + A[l+1] + ... + A[r] ตัวอย่าง: A = [2, 5, 4, 6] ผลลัพธ์คือ 5 คู่ คือ (1,1), (2,2), (3,3), (4,4) และ (1,2) ขั้นตอนการแก้ปัญหา n := ขนาดของ A กำหนดอาร์เรย์ a, s, s

  9. โปรแกรม C++ หาจำนวนตัวอักษรที่ต้องจัดเรียงใหม่ให้สตริงเรียงลำดับ

    คำอธิบายปัญหา สมมติว่าเรามีสตริง S n ตัวอักษร มีแต่ตัวพิมพ์เล็ก ต้องเลือก k ในช่วง 0 ถึง n แล้วเลือก k ตัวอักษรจาก S จัดเรียงใหม่ได้อย่างไรก็ได้ ตัวอักษรที่เหลือคงที่ ทำทั้งหมด 1 ครั้ง ต้องการหา k ที่ทำให้ S เรียงลำดับตามตัวอักษร ตัวอย่าง: S = acdb ผลลัพธ์คือ 3 เพราะ a อยู่ตำแหน่งถูกต้อง ตัวอื่นต้

  10. โปรแกรม C++ หาเรียงสับเปลี่ยนที่ผลรวมคู่ติดกันเรียงเท่าเดิม

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A n องค์ประกอบ ฟังก์ชัน F(p) คืออาร์เรย์ที่เรียงลำดับของผลรวมคู่ติดกันใน p คือ F(p) = sort([p1+p2, p2+p3, ..., pn-1+pn]) มีการเรียงสับเปลี่ยนใน A ต้องการหาการเรียงสับเปลี่ยนอื่นของ A ที่ F(A) เท่าเดิม ตัวอย่าง: A = [2, 1, 6, 5, 4, 3] ผลลัพธ์คือ [1, 2, 5, 6, 3, 4

  11. โปรแกรม C++ หาจำนวนเด็กน้อยที่สุดและมากที่สุดก่อนเริ่มเกม

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A K องค์ประกอบ มีเกม N ผู้เล่นและผู้ควบคุมเกม เกมมี K รอบ รอบที่ i ผู้ควบคุมประกาศจัดกลุ่มคน A[i] คน เหลือจัดกลุ่ม A[i] คนให้มากที่สุด คนที่ไม่มีกลุ่มออกจากเกม อื่นๆ ไปรอบต่อไป รอบอาจไม่มีคนออก หลังรอบ K เหลือ 2 คนชนะ ต้องการหาจำนวนเด็กน้อยที่สุดและมากที่สุดก่อนเ

  12. โปรแกรม C++ นับการดำเนินการน้อยที่สุดทำให้ผลรวมย่อยสลับเครื่องหมาย

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A N องค์ประกอบ ใน 1 ครั้ง เลือกองค์ประกอบและบวกหรือลบ 1 ต้องการหาขั้นตอนน้อยที่สุดทำให้: สำหรับทุก i 1 ถึง n ผลรวมพจน์ที่ 1 ถึง i ไม่เป็น 0 สำหรับทุก i 1 ถึง n-1 เครื่องหมายของผลรวม 1 ถึง i ต่างจากเครื่องหมายผลรวม 1 ถึง i+1 ตัวอย่าง: A = [1, -3, 1, 0] ผลลัพธ์คื

  13. โปรแกรม C++ หาจำนวนขั้นตอนน้อยที่สุดเดินจาก (0,0) ไป (x,y)

    คำอธิบายปัญหา สมมติว่าเรามีพิกัด (x, y) บนกริด 2D หุ่นยนต์อยู่ที่ (0, 0) อยากไป (x, y) เดินได้ บน ล่าง ซ้าย ขวา หรืออยู่ที่เดิม ต้องการไปถึงเป้าหมายด้วยคำสั่งน้อยที่สุด ต้องการนับจำนวนขั้นตอน ตัวอย่าง: x = 3; y = 4 ผลลัพธ์คือ 7 ขั้นตอนการแก้ปัญหา คืนค่า x + y + min(|x - y|, |x - y + 1|, |x - y -

  14. โปรแกรม C++ หาค่าสูงสุดของผลรวม XOR กับอาร์เรย์ในช่วง 0 ถึง K

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A N องค์ประกอบ และค่า K สำหรับจำนวนเต็ม X ในช่วง 0 ถึง K ให้ f(X) = (X xor A[1]) + (X xor A[2]) + ... + (X xor A[N]) ต้องการหาค่าสูงสุดของ f ตัวอย่าง: K = 7; A = [1, 6, 3] ผลลัพธ์คือ 14 เพราะ f(4) = (4 XOR 1) + (4 XOR 6) + (4 XOR 3) = 5 + 2 + 7 = 14 ขั้นตอนการแ

  15. โปรแกรม C++ หาค่า XOR ที่ทำให้ผลรวม XOR สูงสุด

    คำอธิบายปัญหา สมมติว่าเรามีตัวเลข 2 ตัวคือ a และ b ต้องการหาค่า x ที่ทำให้ (a XOR x) + (b XOR x) น้อยที่สุด ตัวอย่าง: a = 6; b = 12 ผลลัพธ์คือ 10 เพราะถ้า x = 4 แล้ว (6 XOR 4) + (12 XOR 4) = 2 + 8 = 10 ขั้นตอนการแก้ปัญหา คืนค่า a XOR b ตัวอย่างโค้ด C++ #include<bits/stdc++.h> using namespa

  16. โปรแกรม C++ หาจำนวนครั้งตีน้อยที่สุดเพื่อสร้างทางไปตลาด

    คำอธิบายปัญหา สมมติว่าเรามีเมทริกซ์ H แถว W คอลัมน์ เซลล์เป็น . หรือ # จุด . คือทางเดิน # คือกำแพง อมลเดินจากบ้านมุมซ้ายบนไปตลาดมุมขวาล่าง เดินได้ 4 ทิศทาง ไม่ออกนอกเมือง ไม่เข้ากำแพง แต่มีแรงตีทำลายกำแพงในพื้นที่ 2x2 ได้ 1 ครั้ง ทำให้ทางเดินได้ ต้องการหาจำนวนครั้งตีน้อยที่สุดถึงตลาด ตัวอย่าง: กริ

  17. โปรแกรม C++ หาคู่ตัวเลขจาก 2 อาร์เรย์ที่ผลบวกไม่อยู่ในทั้งสองอาร์เรย์

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A n องค์ประกอบ และ B m องค์ประกอบ เลือก a จาก A และ b จาก B ที่ a+b ไม่อยู่ใน A และไม่อยู่ใน B ตัวอย่าง: A = [3, 2, 2]; B = [1, 5, 7, 7, 9] ผลลัพธ์คือ [3, 1] เพราะ 3+1=4 ไม่อยู่ในอาร์เรย์ไหน (คำตอบอื่นก็ได้) ขั้นตอนการแก้ปัญหา เรียงลำดับ A เรียงลำดับ B คืนค่าตั

  18. โปรแกรม C++ หาจำนวนคีย์บอร์ดที่ถูกขโมยน้อยที่สุด

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A n องค์ประกอบ มีร้านขายอุปกรณ์อิเล็กทรอนิกส์ ถูกขโมยคืนที่แล้ว คีย์บอร์ดทั้งหมดในร้านมีเลขลำดับเรียงจากจำนวนเต็ม x เช่น x=4 มี 3 ตัว เลขคือ 4,5,6 ถ้า x=10 มี 7 ตัว เลขคือ 10..16 หลังถูกขโมยเหลือ n ตัว มีเลขในอาร์เรย์ A ต้องการหาจำนวนคีย์บอร์ดที่ถูกขโมยน้อยที่สุด

  19. โปรแกรม C++ หาจำนวนกลุ่มนักเขียนโปรแกรมที่จัดได้น้อยที่สุด

    คำอธิบายปัญหา สมมติว่าเรามีอาร์เรย์ A n องค์ประกอบ A[i] แทนทักษะการเขียนโปรแกรมของนักศึกษาคนที่ i ทุกค่าใน A ต่างกัน ต้องการแบ่งเป็นทีมที่: ไม่มีนักศึกษา i และ j ที่ |A[i] - A[j]| = 1 อยู่ในทีมเดียวกัน จำนวนทีมน้อยที่สุด ตัวอย่าง: A = [2, 3, 4, 99, 100] ผลลัพธ์คือ 2 กลุ่ม คือ [2, 3, 4] และ [99, 1

  20. โปรแกรม C++ ตรวจสอบการวางโดมิโนบนเซลล์สีได้ครบทุกชิ้น

    คำอธิบายปัญหา สมมติว่าเรามีตัวเลข 5 ตัวคือ n, k1, k2, w และ b มีกระดาน 2 x n เซลล์ เซลล์แรก k1 ตัวในแถวแรก และ k2 ตัวแรกในแถวที่สอง เป็นสีขาว เซลล์อื่นเป็นสีดำ มีโดมิโนสีขาว w ชิ้น และโดมิโนสีดำ b ชิ้น (ขนาด 2x1) สามารถวางโดมิโนขาวได้ก็ต่อเมื่อเซลล์ทั้งสองเป็นสีขาวและว่าง โดมิโนดำวางได้ก็ต่อเมื่อเซ

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:291/301  20-คอมพิวเตอร์/Page Goto:1 285 286 287 288 289 290 291 292 293 294 295 296 297