Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. นับคู่ (p, q) ที่ p ปรากฏในอาเรย์อย่างน้อย q ครั้ง และ q ปรากฏอย่างน้อย p ครั้งใน C++

    เราได้รับอาเรย์ของจำนวนเต็มบวก เป้าหมายคือหาจำนวนคู่ของสมาชิกของ arr[] ที่คู่มีสมาชิก (p, q) โดยที่ p ปรากฏในอาเรย์อย่างน้อย q ครั้ง และ q ปรากฏในอาเรย์อย่างน้อย p ครั้ง มาดูตัวอย่าง อินพุต − int arr[] = { 3, 3, 3, 5, 5, 6, 6 } เอาต์พุต − จำนวนคู่ในอาเรย์ที่ความถี่ของหนึ่งมากกว่าหรือเท่ากับค่าของ

  2. นับจำนวนสตริงที่สร้างได้จากอีกสตริงหนึ่งโดยใช้ตัวอักษรแต่ละตัวสูงสุดครั้งเดียวใน C++

    เราได้รับสองสตริงคือ str1 และ str2 และงานคือคำนวณจำนวนสตริงที่สามารถสร้างขึ้นได้สมบูรณ์จากอีกสตริงหนึ่ง แต่เราสามารถใช้ตัวอักษรแต่ละตัวได้เพียงครั้งเดียวในการสร้างสตริง เช่น เราจะนำสตริง str1 และ str2 มาตรวจสอบการเกิดของ str2 ใน str1 โดยใช้ตัวอักษรของ str1 ทุกตัวครั้งเดียว อินพุต − str_1 = technic

  3. นับจำนวนซับอาเรย์ที่จัดเรียงใหม่ได้เป็นพาลินโดรมใน C++

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

  4. นับจำนวนการดำเนินการเพื่อทำให้สตริงไบนารี "ab" free ใน C++

    เราได้รับสตริงที่อาจมี ab และงานคือคำนวณจำนวนการดำเนินการที่ต้องใช้เพื่อลบหรือลบ ab ออกจากสตริง ดังนั้นงานของเราคือตรวจสอบก่อนว่าสตริงมี ab หรือไม่ ถ้ามีต้องทำให้สตริง ab free อินพุต − string str = ababaa เอาต์พุต − จำนวนการดำเนินการเพื่อทำให้สตริงไบนารี ab free คือ 4 คำอธิบาย − ตามที่เห็นในสตริง

  5. นับคู่ของลำดับวงเล็บที่สมดุลใน C++

    เราได้รับสตริงที่มีวงเล็บ และงานคือคำนวณจำนวนคู่ของลำดับวงเล็บที่สามารถสร้างได้โดยที่วงเล็บเป็นสมดุล วงเล็บถูกเรียกว่าสมดุลเมื่อมีจำนวนวงเล็บเปิดและปิดเท่ากัน วงเล็บที่ใช้ไปแล้วไม่สามารถนำมาใช้ซ้ำสำหรับสร้างคู่ได้ อินพุต − string paran[] = { )()()), (, )(, )(, ) } เอาต์พุต − จำนวนคู่ของลำดับวงเล็

  6. นับจำนวนการเคลื่อนที่ที่เป็นไปได้ในทิศทางที่กำหนดในกริด C++

    เรามีตัวแปร n และ m แทนกริดขนาด n x m และจุดเริ่มต้น x,y นอกจากนี้ยังมีคู่ของขั้นตอน/การเคลื่อนที่ที่สามารถนำไปใช้เพื่อเดินทางภายในกริด เช่น moves ( (1,1), (2,2) ) เป็นต้น แต่ละคู่แทนหน่วยขั้นตอนที่ใช้ในแกน x,y เป้าหมายคือหาจำนวนขั้นตอนทั้งหมดที่สามารถทำได้เพื่อเดินทางภายในกริดภายในขอบเขต [1,n] X [

  7. นับจำนวนการเรียงลำดับที่ลดลงก่อนแล้วเพิ่มขึ้นใน C++

    เรามีตัวแปร num เป้าหมายคือหาจำนวนการเรียงลำดับของตัวเลขระหว่าง [1, num] ที่ตัวเลขลดลงก่อนแล้วเพิ่มขึ้น ตัวอย่างเช่นถ้า num=3 ตัวเลขคือ 1,2,3 การเรียงลำดับจะเป็น [3,1,2] และ [2,1,3] จำนวนคือ 2 เรารู้ว่าในทุกการเรียงลำดับ การเปลี่ยนจากการลดลงเป็นการเพิ่มขึ้นจะถูกกำหนดโดยตำแหน่งของ 1 ซึ่งเป็นตัวเลขน

  8. นับคู่ของตัวเลขที่ผลรวมเป็นจำนวนเฉพาะและน้อยกว่า n ใน C++

    เราได้รับจำนวนเต็มบวก n เป็นอินพุต เป้าหมายคือหาจำนวนคู่ที่เป็นไปได้ (i, j) ที่ผลรวม (i+j) เป็นจำนวนเฉพาะและน้อยกว่า n โดยที่ i != j และ i, j >= 1 หาก n เป็น 4 จะมีเพียง 1 คู่คือ (1,2) เพราะ 1+2 = 3 เป็นจำนวนเฉพาะและน้อยกว่า 4 มาดูตัวอย่าง อินพุต − n=7 เอาต์พุต − จำนวนคู่ที่ผลรวมเป็นจำนวนเฉพาะ

  9. นับจำนวนคำที่ตัวอักษรตัวที่ i เป็นตัวอักษรตัวที่ i-1, i, หรือ i+1 ของคำที่กำหนดใน C++

    เราได้รับสตริง str[] เป็นอินพุต เป้าหมายคือนับจำนวนคำจาก str[] ที่มีความยาวเท่ากับ str[] และมีตำแหน่งตัวอักษรที่ตัวอักษรตัวที่ i ถูกแทนที่ด้วยตัวอักษรที่ตำแหน่ง (i-1), i, หรือ (i+1) สำหรับตัวอักษรแรก การแทนที่จะมาจากตำแหน่ง i หรือ i+1 สำหรับตัวอักษรสุดท้าย การแทนที่จะมาจากตำแหน่ง i-1 หรือ i มาดูต

  10. โปรแกรมหาต้นทุนขั้นต่ำในการสร้างถนนเพื่อเดินทางจากเมืองแรกไปยังเมืองอื่นๆ ใน C++

    สมมติว่าเรามีสองลิสต์ costs_from และ costs_to ที่มีขนาดเท่ากัน โดยดัชนี i แทนเมืองหนึ่ง การสร้างถนนทางเดียวจากเมือง i ไป j มีค่าใช้จ่ายเท่ากับ costs_from[i] + costs_to[j] นอกจากนี้ยังมีลิสต์ edges ที่แต่ละขอบมีรูปแบบ [x, y] แสดงว่ามีถนนทางเดียวจากเมือง x ไป y อยู่แล้ว หากเราต้องการเดินทางไปยังเมือง

  11. โปรแกรมนับจำนวนการดำเนินการแปลงเมทริกซ์ไบนารีเป็นเมทริกซ์ศูนย์ใน C++

    สมมติว่าเรามีเมทริกซ์ไบนารี ตอนนี้พิจารณาการดำเนินการที่เราหยิบเซลล์หนึ่งและพลิกมันและเซลล์ข้างเคียงทั้งหมด (บน, ล่าง, ซ้าย, ขวา) เราต้องหาจำนวนการดำเนินการน้อยที่สุดที่จำเป็นเพื่อให้เมทริกซ์มีแต่ 0 หากไม่มีวิธีแก้ ให้คืนค่า -1 ดังนั้น หากอินพุตเป็นเหมือน 00 10 เอาต์พุตจะเป็น 3 ในการแก้ปัญหา

  12. โปรแกรมสร้างเลข Lexicographic ใหญ่ที่สุดจากรายการตัวเลขใน C++

    สมมติว่าเรามีรายการตัวเลขชื่อ nums เราต้องจัดเรียงลำดับใหม่เพื่อสร้างตัวเลขที่ใหญ่ที่สุดเป็นไปได้และคืนค่านั้นเป็นสตริง ดังนั้น หากอินพุตเป็น nums = [20, 8, 85, 316] เอาต์พุตจะเป็น 88531620 ในการแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ - กำหนดอาร์เรย์ temp สำหรับแต่ละรายการ i ใน nums: แทรก i ลงใน te

  13. จำนวนการดำเนินการเพิ่ม/ลดแบบซัฟฟิกซ์เพื่อสร้างอาร์เรย์ที่กำหนดใน C++

    เราได้รับอาร์เรย์เป้าหมาย arr[] ที่มีจำนวนเต็มบวก เป้าหมายคือสร้างอาร์เรย์เป้าหมาย arr[] โดยใช้อาร์เรย์เริ่มต้นที่มีแต่ 0 การดำเนินการที่สามารถนำไปใช้กับอาร์เรย์ว่างที่มีแต่ 0 จะเป็นการดำเนินการเพิ่ม/ลดแบบซัฟฟิกซ์ (suffix increment/decrement operations) ถ้าเราเลือกดัชนีใดๆ เช่น i ในกรณีของการดำเนิน

  14. จำนวนซับสตริงอะนาครัมทั้งหมดใน C++

    เราได้รับสตริง str[] เป็นอินพุต เป้าหมายคือนับจำนวนซับสตริงอะนาครัมที่มีอยู่ใน str[] สองสตริงเป็นอะนาครัมของกันและกันถ้าพวกเขามีจำนวนตัวอักษรเท่ากันและตัวอักษรทุกตัวปรากฏในทั้งสอง ลำดับของตัวอักษรอาจต่างกัน abc เป็นอะนาครัมของ cba, bca ฯลฯ ตัวอย่าง อินพุต - str[] = abccb เอาต์พุต - จำนวนซับสตริงอ

  15. จำนวนสามเหลี่ยมจาก n จุดทั้งหมดที่มี m จุดอยู่บนเส้นตรงเดียวกันใน C++

    เราได้รับตัวแปรสองตัว n และ m แทนจำนวนจุดบนระนาบ 2 มิติ จาก n จุด m จุดอยู่บนเส้นตรงเดียวกัน (collinear) เป้าหมายคือหาจำนวนสามเหลี่ยมที่สามารถสร้างได้โดยใช้นจุดเหล่านี้ จุด一直線 (Collinear points) - จุดที่อยู่บนเส้นตรงเดียวกันเรียกว่าจุด一直線 จุด A และ B เป็นจุด一直線 กำหนด n=4 (A,B,C,D), m=2 (A,B) จำนว

  16. นับคู่ที่สร้างจากเซิร์ฟอาร์เรย์องค์ประกอบที่แตกต่างกันใน C++

    เราได้รับอาร์เรย์ arr[] ที่มีองค์ประกอบจำนวนเต็ม เป้าหมายคือหาจำนวนคู่ที่สามารถสร้างได้จากองค์ประกอบของเซิร์ฟอาร์เรย์ของ arr[] โดยที่แต่ละเซิร์ฟอาร์เรย์มีเฉพาะองค์ประกอบที่แตกต่างกัน หากอาร์เรย์คือ [1,2,2,3,3] เซิร์ฟอาร์เรย์ที่มีองค์ประกอบแตกต่างกันอย่างเดียวจะเป็น [1,2] และ [2,3] และคู่จะเป็น (1,2)

  17. จำนวนคำที่มีอยู่ในทุกประโยคที่กำหนดใน C++

    เราได้รับหลายประโยคในรูปแบบสตริง เป้าหมายคือนับจำนวนคำที่มีอยู่ในทุกประโยค หมายเหตุ - จะพิจารณาเฉพาะคำที่ประกอบด้วยตัวอักษรพิมพ์เล็กทั้งหมด ถ้าประโยคคือ - I am learning C language learning new things is easy Kids are learning healthy habits มีแค่ learning ที่อยู่ในทั้งสาม จำนวนคือ 1 ตัวอย่าง อิน

  18. จำนวนตัวเลขที่ผลต่างระหว่างตัวเลขและผลรวมหลักไม่ต่ำกว่า L ใน C++

    เราได้รับตัวเลข N และอีกตัวเลขหนึ่ง L เป้าหมายคือหาตัวเลขระหว่าง 1 ถึง N ที่มีผลต่างระหว่างตัวเลขเองและผลรวมหลักของมัน ไม่ต่ำกว่า L ถ้า N=23, L=10 จำนวนตัวเลขแบบนี้จะเป็น 4 23-(2+3)=18, 22-(2+2)=18, 21-(2+1)=18, 20-(2+0)=18 ตัวเลขทั้งหมดข้างต้นตรงตามเงื่อนไข แต่ 19-(1+9)=9 ซึ่งน้อยกว่า L คล้ายกัน

  19. จำนวนมุมฉากทึบในวงกลมที่มี k จุดห่างเท่ากันระหว่าง 2 จุดที่กำหนดใน C++

    เราได้รับวงกลมที่มี K จุดห่างเท่ากันบนเส้นรอบวง นอกจากนี้เรายังได้รับสองจุด A และ B เป้าหมายคือนับจำนวนสามเหลี่ยมที่เป็นไปได้โดยใช้จุดเหล่านี้ ที่มีมุมฉากทึบ ACB (มุมมากกว่า 90 องศา) ภายใน พวกเขา จุด A และ B เป็นอย่างที่ A < B ที่นี่ K=8, A=2, B=5, จำนวนจุด=2 (C,C) ที่ทำให้มุม LACB, LACB เป็นมุมฉ

  20. จำนวนครั้งที่พบรูปแบบ "1(0+)1" ในสตริงใน C++

    0) ของ 0 ที่ติดกัน เป้าหมายคือหารูปแบบเช่น (1(0+)1) ภายในสตริง str ตัวอย่าง อินพุต - str = abb010bb10111011 เอาต์พุต - จำนวนครั้งที่พบรูปแบบ 1(0+)1 ในสตริงคือ - 2 คำอธิบาย - รูปแบบภายใน str ถูกไฮไลท์: abb010bb10111011, abb010bb10111011 อินพุต - str = 01001011001001100 เอาต์พุต - จำนวนครั้งที่พบรู

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:233/301  20-คอมพิวเตอร์/Page Goto:1 227 228 229 230 231 232 233 234 235 236 237 238 239