หน้าแรก
หน้าแรก
สมมติว่าเรามีวงกลมสองวง (จุดศูนย์กลางและค่ารัศมี) เราต้องตรวจสอบวงกลมหนึ่งวงว่าพอดีในวงกลมอื่นหรือไม่ มีสาเหตุที่เป็นไปได้สามประการ วงกลมที่เล็กกว่าอยู่ภายในวงกลมที่ใหญ่กว่าโดยสมบูรณ์โดยไม่แตะกัน ในกรณีนี้ ผลรวมของระยะห่างระหว่างจุดศูนย์กลางกับรัศมีที่เล็กกว่า จะน้อยกว่ารัศมีที่ใหญ่กว่า ดังนั้นอั
เรามีอาร์เรย์ A ที่มีองค์ประกอบ n เราต้องตรวจสอบว่าอาร์เรย์ถูกจัดเรียงแบบคู่หรือไม่ สมมติว่าอาร์เรย์เป็นเหมือน {8, 10, 18, 20, 5, 15} นี่คือการเรียงลำดับคู่เป็น (8, 10), (18, 20), (5, 15) ถูกจัดเรียง หากอาร์เรย์มีจำนวนองค์ประกอบคี่ ตัวสุดท้ายจะถูกละเว้น วิธีการนั้นง่ายเกินไป โดยเอา I จาก 0 ถึง n-1
เราจะมาดูวิธีการตรวจสอบว่าเมทริกซ์เบาบางหรือไม่ เมทริกซ์แบบกระจายเป็นเมทริกซ์ที่องค์ประกอบส่วนใหญ่เป็น 0 คำจำกัดความของเมทริกซ์แบบกระจายคือ ถ้าองค์ประกอบที่ 2/3 เป็น 0 เมทริกซ์นั้นจะถูกแสดงเป็นเมทริกซ์แบบกระจาย นี่คือตัวอย่างของเมทริกซ์กระจัดกระจาย ในการตรวจสอบ เราจะนับจำนวน 0s ในเมทริกซ์ ถ้าจำนว
ในส่วนนี้เราจะมาดูวิธีการตรวจเช็คตัวเลขว่ากระจัดกระจายหรือไม่ ตัวเลขจะเบาบางถ้าการแทนค่าเลขฐานสองของตัวเลขนั้น มี 1 วินาทีติดต่อกันไม่เกินสองหรือมากกว่า สมมติว่าตัวเลขเช่น 72 นี่คือ 01001000 ในที่นี้ไม่มี 1 วินาทีหรือมากกว่าติดต่อกัน ในการตรวจสอบตัวเลขเบาบางหรือไม่ เราจะนำตัวเลขนั้นมาเป็น n จากนั้น
ที่นี่เราจะเห็นหนึ่งสตริงคือ palindrome หลังจากการหมุนบางรอบหรือไม่ palindrome เป็นสตริงที่เหมือนกันทั้งสองทิศทาง การหมุนสตริงเป็น palindrome หากเป็นเช่น AAAAD นี่ไม่ใช่พาลินโดรมโดยตรง แต่การหมุนของ AADAA นั้นเป็นพาลินโดรม ในการตรวจสอบสตริงว่าหมุน palindrome หรือไม่จากนั้นเราจะตรวจสอบว่านี่คือ pali
สมมติว่าเรามีตัวเลข เราต้องเขียนเป็นผลรวมของจำนวนเต็มสองจำนวน ถ้าใช่ ให้พิมพ์ตัวเลข มิฉะนั้นให้พิมพ์ -1 จำนวนกล่าวว่าเป็นจำนวนมากมายคือผลรวมของตัวหารที่เหมาะสมทั้งหมดของจำนวนซึ่งแสดงโดยผลรวม (n) มากกว่าค่าของตัวเลข เพื่อแก้ปัญหานี้ เราจะเก็บจำนวนมากมายทั้งหมดไว้ในชุด และสำหรับจำนวนที่กำหนด n ให้รัน
ให้เราพิจารณาว่าเรามีจำนวนเต็ม n ปัญหาคือต้องตรวจสอบว่าจำนวนเต็มนี้มีรูปแบบอื่นในรูปแบบไบนารีที่เทียบเท่าหรือไม่ รูปแบบอื่นหมายถึง 101010…. วิธีการมีลักษณะดังนี้:ตรวจสอบแต่ละหลักโดยใช้เลขฐานสองที่เท่ากัน และถ้าสองตัวติดกัน ให้คืนค่าเท็จ มิฉะนั้น จะเป็นจริง ตัวอย่าง #include <iostream> using n
ให้เราพิจารณาว่าเรามีจำนวนเต็ม n ปัญหาคือต้องตรวจสอบว่าจำนวนเต็มนี้มีรูปแบบอื่นในรูปแบบไบนารีที่เทียบเท่าหรือไม่ รูปแบบอื่นหมายถึง 101010…. 1) ตอนนี้ถ้าบิตของ num ทั้งหมดเป็น 1 แล้ว num จะมีรูปแบบสลับกัน ตัวอย่าง #include <iostream> #include <algorithm> using namespace std; bool isAllBi
ที่นี่เราจะดูวิธีการตรวจสอบตัวเลขว่าเป็นเลขกฤษณะมูรตีหรือไม่ ตัวเลขคือเลขกฤษณมูรตี ถ้าผลรวมของแฟคทอเรียลของแต่ละหลักตรงกับตัวเลข ตัวอย่างเช่น ถ้าตัวเลขคือ 145 ผลรวม =1! +4! +5! =1 + 24 + 120 =145 นี่คือเลขกฤษณมูรตี ตรรกะง่าย ๆ เราต้องหาแฟกทอเรียลของตัวเลขแต่ละตัว แล้วหาผลรวม ถ้าค่านั้นตรงกับตัวเลขท
ที่นี่เราจะเห็นโปรแกรมหนึ่งที่สามารถตรวจสอบว่าตัวเลขหารด้วย 23 ได้หรือไม่ สมมติว่ามีหมายเลข 1191216 ซึ่งหารด้วย 23 ลงตัว ในการตรวจสอบการหาร เราต้องปฏิบัติตามกฎนี้ - แยกหลักสุดท้ายของตัวเลข/หมายเลขที่ตัดทอนทุกครั้ง บวก 7 * (หลักสุดท้ายของตัวเลขที่คำนวณก่อนหน้านี้) เป็นตัวเลขที่ถูกตัดทอน ทำซ
ที่นี่เราจะเห็นโปรแกรมหนึ่งที่สามารถตรวจสอบว่าตัวเลขหารด้วย 41 ลงตัวหรือไม่ สมมุติว่าให้หมายเลข 104413920565933 ซึ่งหารด้วย 41 ลงตัว ในการตรวจสอบการหาร เราต้องปฏิบัติตามกฎนี้ - แยกหลักสุดท้ายของตัวเลข/หมายเลขที่ตัดทอนทุกครั้ง ลบ 4 * (หลักสุดท้ายของตัวเลขที่คำนวณก่อนหน้านี้) เป็นตัวเลขที่ถูกตั
ที่นี่เราจะเห็นปัญหาหนึ่งที่บอกได้ว่าสตริงหรือตัวเลขเป็นการต่อกันของ 1, 14 หรือ 144 เท่านั้น สมมติว่าสตริงคือ “111411441” ซึ่งถูกต้อง แต่ “144414” ไม่ถูกต้อง งานง่าย ๆ เราต้องดึงตัวเลขหลักเดียว สองหลัก และสามหลักจากตัวสุดท้าย และตรวจสอบว่า ตรงกับใด ๆ ในสามนี้ (1, 14 และ 144) ถ้าเราได้หนึ่งตรงกัน หา
สมมติว่าเรามีอาร์เรย์ A และจำนวนเต็ม K อีกตัวหนึ่ง เราต้องจัดเรียงองค์ประกอบที่อยู่ระหว่างทวีคูณสองตัวของ K สมมติว่า A เป็นเช่น [2, 13, 3, 1, 21, 7, 8, 13, 12 ] และ K =2 ผลลัพธ์จะเป็น [2, 1, 3, 7, 13, 21, 8, 13, 12] ตัวคูณของ 2 ในที่นี้คือ 2, 8 และ 12 องค์ประกอบระหว่าง 2 ถึง 8 คือ 13, 3, 1, 21, 7 จะ
สมมติว่าเรามีอาร์เรย์ของสตริง และมีสตริงอื่นสำหรับการอ้างอิง เราต้องใช้สตริงอ้างอิงและใช้ลำดับของอักขระในสตริงอ้างอิง เราจะจัดเรียงอาร์เรย์สตริง เรากำลังพิจารณาสตริงในอาร์เรย์ และสตริงอ้างอิงเป็นอักษรตัวพิมพ์เล็ก สมมติว่าอาร์เรย์สตริงมีลักษณะดังนี้:[hello, programming, science, computer, india] สตร
สมมติว่าเรามีอาร์เรย์ที่แตกต่างกันสองชุด เราต้องจัดเรียงหนึ่งอาร์เรย์ตามอาร์เรย์อื่นโดยใช้คลาสคู่ C ++ STL พิจารณาสองอาร์เรย์เช่น A1 =[2, 1, 5, 4, 9, 3, 6, 7, 10, 8] และอาร์เรย์อื่นเช่น A2 =[A, B, C, D, E, F, G , H, I, J], ผลลัพธ์ที่ได้จะเป็นดังนี้:A1 =[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], A2 =[B, A, F,
สมมติว่าเรามีกราฟที่สมบูรณ์ เราต้องนับจำนวนต้น Edge Disjoint Spanning Edge Disjoint Spanning tree เป็นต้นไม้ที่แผ่ขยายออกไป ซึ่งไม่มีต้นไม้สองต้นในชุดที่มีขอบเหมือนกัน สมมติว่า N (จำนวนจุดยอด) คือ 4 จากนั้นผลลัพธ์จะเป็น 2 กราฟที่สมบูรณ์โดยใช้จุดยอด 4 จุดจะเป็นดังนี้ - ต้นไม้ที่ทอดยาวไม่ปะติดปะต่อ
สมมติว่าเรามีรายการข้อมูลหนึ่งรายการที่มีค่าบวกและลบ เราต้องหาผลรวมของ subarray ที่ต่อเนื่องกันซึ่งผลรวมมากที่สุด สมมติว่ารายการประกอบด้วย {-2, -5, 6, -2, -3, 1, 5, -6} ดังนั้นผลรวมของอาร์เรย์ย่อยสูงสุดคือ 7 เป็นผลรวมของ {6, -2, -3 , 1, 5} เราจะแก้ปัญหานี้โดยใช้วิธี Divide and Conquer ขั้นตอนจะมีลั
พิจารณาว่าเรามีอาร์เรย์ขนาด n เราต้องหาค่ามัธยฐานและโหมดโดยใช้เทคนิคการเรียงลำดับการนับ เทคนิคนี้มีประโยชน์เมื่อองค์ประกอบอาร์เรย์อยู่ในช่วงจำกัด สมมติว่าองค์ประกอบคือ {1, 1, 1, 2, 7, 1} จากนั้นโหมดคือ 1 และค่ามัธยฐานคือ 1.5 ให้เราดูว่าค่ามัธยฐานคืออะไรและโหมดคืออะไร - ค่ามัธยฐานคือตัวเลขตรงกลางในร
สมมติว่าเรามีสตริง เราต้องย่อผลรวมของค่า ASCII ของอักขระแต่ละตัวให้เหลือน้อยที่สุด หลังจากลบทุกการเกิดขึ้นของอักขระบางตัว สมมติว่าสตริงได้รับเช่น hello ผลรวมของอักขระ ASCII คือ (104 + 101 + 108 + 108 + 111) =532 ตอนนี้ให้ตรวจสอบการปรากฏของอักขระแต่ละตัว h เกิดขึ้นครั้งเดียว ดังนั้นราคาคือ 1 * 104 =
สมมติว่าเรามีสตริงตัวเลข A และ B สองสตริง เราต้องหาต้นทุนขั้นต่ำเพื่อทำให้ A และ B เหมือนกัน เราดำเนินการได้เพียงการดำเนินการเดียวเท่านั้น นั่นคือ เราสามารถลบตัวเลขออกจากสตริงได้ ค่าใช้จ่ายในการลบตัวเลขจากตัวเลขเท่ากับค่าตัวเลข สมมติว่าสตริง A =“6789”, B =“7859” จากนั้นเราต้องลบ 6 จาก A และลบ 5 จาก