หน้าแรก
หน้าแรก
ในที่นี้ เราจะเห็นพื้นที่ของสี่เหลี่ยมจัตุรัสที่จารึกไว้ในวงกลมเดียว และวงกลมนั้นถูกจารึกไว้ในสามเหลี่ยมด้านเท่า ด้านข้างของสี่เหลี่ยมคือ a รัศมีของวงกลมคือ r และด้านของรูปหกเหลี่ยมคือ A แผนภาพจะเป็นดังนี้ เรารู้ว่ารัศมีของวงกลมที่จารึกไว้ในสามเหลี่ยมด้านเท่าคือรัศมีของสามเหลี่ยม ค่าที่ได้คือ −
ในที่นี้เราจะเห็นพื้นที่ของรูปสามเหลี่ยมซึ่งถูกจารึกไว้ในรูปสี่เหลี่ยมผืนผ้าหนึ่งและวงกลมนั้นถูกจารึกไว้ในวงรี ครึ่งหนึ่งของแกนหลักและแกนรองคือ a และ b ตามลำดับ สมมติว่าความยาวของสี่เหลี่ยมคือ l และความกว้างคือ h เรารู้ว่าพื้นที่ของสี่เหลี่ยมในวงรีคือ − พื้นที่ของสามเหลี่ยมคือ − ตัวอย่าง #in
ที่นี่เราจะเห็นพื้นที่ของวงกลมที่สลักเป็นรูปสี่เหลี่ยมขนมเปียกปูน เส้นทแยงมุมของรูปสี่เหลี่ยมขนมเปียกปูนคือ a และ b รัศมีของวงกลมคือ h เส้นทแยงมุมสองเส้นกำลังสร้างสามเหลี่ยมที่เท่ากันสี่รูป สามเหลี่ยมแต่ละรูปเป็นรูปสามเหลี่ยมมุมฉาก ดังนั้น พื้นที่ของรูปสามเหลี่ยมจึงเป็น − สี่เหลี่ยมขนมเปียกปูนแต
ในที่นี้เราจะเห็นพื้นที่ของวงกลมที่เขียนเป็นรูปสามเหลี่ยมด้านเท่า ด้านของสามเหลี่ยมคือ a พื้นที่ของสามเหลี่ยมด้านเท่า − ครึ่งวงกลมของสามเหลี่ยมคือ − รัศมีของวงกลมคือ − ตัวอย่าง #include <iostream> #include <cmath> using namespace std; float area(float a) { if (a <
ที่นี่เราจะมาดูวิธีหาพื้นที่วงกลมของสามเหลี่ยมมุมฉากกัน ด้านตรงข้ามมุมฉากของสามเหลี่ยมกำลังสร้างเส้นผ่านศูนย์กลางของวงกลม ดังนั้นหากด้านตรงข้ามมุมฉากคือ h แล้วรัศมีจะเป็น h/2 ดังนั้น พื้นที่คือ − โค้ดตัวอย่าง #include <iostream> #include <cmath> using namespace std; float area(float
ในที่นี้เราจะมาดูวิธีการหาพื้นที่ของรูปห้าเหลี่ยมซึ่งอยู่ภายในวงกลม รัศมีจะได้รับ ด้านของรูปห้าเหลี่ยมคือ a อย่างที่เราทราบดีว่าด้านของรูปห้าเหลี่ยมนั้นอยู่ด้านล่าง − ดังนั้นพื้นที่คือ − ตัวอย่าง #include <iostream> #include <cmath> using namespace std; float area(float r) { &nbs
ที่นี่เราจะมาดูวิธีหาพื้นที่ของรูปหกเหลี่ยมหนึ่งโดยใช้ความยาวแนวทแยง ความยาวเส้นทแยงมุมของรูปหกเหลี่ยมคือ d มุมภายในของรูปหกเหลี่ยมปกติแต่ละมุมอยู่ที่ 120° ผลรวมของมุมภายในทั้งหมดคือ 720° หากเส้นทแยงมุมคือ d พื้นที่จะเป็น − ตัวอย่าง #include <iostream> #include <cmath> using namespac
ที่นี่เราจะมาดูวิธีหาพื้นที่ของวงกลมที่เขียนเป็นรูปหลายเหลี่ยมปกติด้าน N ให้ N (จำนวนด้าน) และแต่ละด้านของรูปหลายเหลี่ยมคือ a วิธีการนั้นง่าย รูปหลายเหลี่ยมด้าน N หนึ่งรูปสามารถแบ่งออกเป็นสามเหลี่ยมจำนวนเท่า N ได้ มุมทั้งหมดสำหรับสามเหลี่ยมแต่ละรูปที่อยู่ตรงกลางคือ 360/N ดังนั้น - ตัวอย่าง #incl
สมมุติว่าให้สี่เหลี่ยมหนึ่งอัน เรารู้ความยาว L และความกว้าง B ของมัน เราต้องหาพื้นที่ของสามเหลี่ยมที่ใหญ่ที่สุดที่สามารถจารึกไว้ภายในสี่เหลี่ยมนั้น - สามเหลี่ยมที่ใหญ่ที่สุดจะเป็นครึ่งหนึ่งของสี่เหลี่ยมเสมอ ก็จะเป็นเช่นนั้น ตัวอย่าง #include <iostream> #include <cmath> using namespac
สมมติว่าเรามีสี่เหลี่ยมจัตุรัสที่มีด้านเป็น a เราจะสร้างช่องสี่เหลี่ยมมากขึ้นโดยแนบจุดกึ่งกลางของช่องสี่เหลี่ยมซ้ำๆ จำนวนการทำซ้ำคือ n ครั้ง เราต้องหาพื้นที่สี่เหลี่ยมจัตุรัสที่ n เนื่องจากด้านข้างของสี่เหลี่ยมด้านนอกคือ a พื้นที่จึงเป็น ตอนนี้โดยใช้ทฤษฎีบทพีทาโกรัส เราจะได้พื้นที่ของสี่เหลี่ยมท
ในที่นี้ เราจะเห็นปัญหาหนึ่งข้อ โดยจะมีสี่เหลี่ยมหนึ่งอัน เราต้องหาพื้นที่ของรูปสี่เหลี่ยมขนมเปียกปูนที่ใหญ่ที่สุดที่สามารถจารึกไว้ในรูปสี่เหลี่ยมผืนผ้าได้ แผนภาพจะมีลักษณะดังนี้ - ความยาวของสี่เหลี่ยมผืนผ้าคือ l และความกว้างคือ b ดังนั้นพื้นที่ของรูปสี่เหลี่ยมขนมเปียกปูนคือ − ซอร์สโค้ด #include
เราจะเห็นปัญหาที่น่าสนใจอย่างหนึ่ง เรามีหนึ่งอาร์เรย์ที่มีองค์ประกอบ N เราต้องดำเนินการหนึ่งแบบสอบถาม Q ดังนี้ - Q(เริ่มต้น, สิ้นสุด) บ่งชี้ว่าจำนวนครั้งที่ตัวเลข p เกิดขึ้นตรงจำนวน p จำนวนครั้งตั้งแต่ต้นจนจบ ดังนั้นหากอาร์เรย์มีลักษณะดังนี้:{1, 5, 2, 3, 1, 3, 5, 7, 3, 9, 8} และข้อความค้นหาคือ −
ที่นี่เราจะมาดูกันว่าจำเป็นต้องใช้พื้นที่เสริมสำหรับการเรียกใช้ฟังก์ชันแบบเรียกซ้ำอย่างไร และต่างจากการเรียกใช้ฟังก์ชันปกติอย่างไร สมมติว่าเรามีฟังก์ชันหนึ่งดังนี้ - long fact(int n){ if(n == 0 || n == 1) return 1; return n * fact(n-1); } ฟังก์ชันนี้เ
ที่นี่เราจะเห็น Baum Sweet Sequence ลำดับนี้เป็นลำดับไบนารีหนึ่งลำดับ หากตัวเลข n มีเลขคี่เป็น 0 ที่ต่อเนื่องกัน ดังนั้นบิตที่ n จะเป็น 0 มิฉะนั้น บิตที่ n จะเป็น 1 เรามีจำนวนธรรมชาติ n งานของเราคือค้นหาเทอมที่ n ของลำดับ Baum Sweet ดังนั้นเราต้องตรวจสอบว่ามีบล็อกศูนย์ที่มีความยาวคี่อยู่หรือไม่ หา
ที่นี่เราจะเห็นหมายเลขคู่หมั้น นี่คือคู่ของตัวเลข โดยที่ผลรวมของตัวหารที่เหมาะสมของจำนวนหนึ่งมีค่ามากกว่าจำนวนอื่น เราต้องหาคู่นี้ให้เจอ ตัวอย่างเช่น คู่นี้เป็นเหมือน (48, 75) ตัวหารของ 48 คือ {1, 2, 3, 4, 6, 8, 12, 16, 24} และผลรวมคือ 76 ในทำนองเดียวกัน ตัวหารของ 75 คือ {1, 3, 5, 15, 25} ดังนั้นผล
ในหนังสือ CLRS มีการอธิบายอัลกอริทึม BFS โดยใช้เวกเตอร์และคิว เราต้องใช้อัลกอริทึมนั้นโดยใช้ C++ STL เรามาดูอัลกอริทึมกันก่อน อัลกอริทึม BFS(G, s) − begin for each vertex u in G.V - {s}, do u.color := white u.d := infinity
สมมุติว่าเรามีเลขฐานสอง 1 ตัว นั่นคือตัวแทนของตัวเลข n เราต้องหาการแทนค่าไบนารีของตัวเลขที่เล็กที่สุดแต่มากกว่า n และมีจำนวน 0 และ 1 เท่ากัน ดังนั้นหากตัวเลขคือ 1011 (11 เป็นทศนิยม) ผลลัพธ์จะเป็น 1101 (13) ปัญหานี้สามารถพบได้โดยใช้การคำนวณการเปลี่ยนแปลงครั้งถัดไป ให้เราดูอัลกอริทึมเพื่อให้ได้แนวคิด
เราทราบดีว่าวิธีการค้นหาแบบไบนารีเป็นหนึ่งในอัลกอริธึมการเรียงลำดับที่เหมาะสมและมีประสิทธิภาพที่สุด นี้ทำงานตามลำดับการเรียงลำดับ อัลกอริทึมนั้นเรียบง่าย เพียงค้นหาองค์ประกอบจากตรงกลาง จากนั้นแบ่งรายการออกเป็นสองส่วน แล้วย้ายไปทางรายการย่อยด้านซ้ายหรือรายการย่อยทางขวา เรารู้อัลกอริธึมของมัน ตอนนี้เ
งานคือการพิมพ์โหนดที่เริ่มต้นจากจุดสิ้นสุดของรายการที่เชื่อมโยงโดยไม่ต้องใช้ช่องว่างเพิ่มเติม ซึ่งหมายความว่าไม่ควรมีตัวแปรเพิ่มเติมใด ๆ แทนตัวชี้ส่วนหัวที่ชี้ไปยังโหนดแรกจะถูกย้าย ตัวอย่าง Input: 10 21 33 42 89 Output: 89 42 33 21 10 มีวิธีแก้ไขมากมายในการพิมพ์รายการที่เชื่อมโยงในลำดับย้อนกลับ เ
กำหนดอาร์เรย์ a[] พร้อมองค์ประกอบและงานคือการพิมพ์การเกิดขึ้นล่าสุดขององค์ประกอบที่กำหนดในรายการ ที่นี่เราไม่เพียงแต่ต้องลบองค์ประกอบที่ซ้ำกันเท่านั้น แต่ยังต้องรักษาลำดับการเกิดขึ้นขององค์ประกอบในอาร์เรย์ตามครั้งสุดท้ายที่เกิดขึ้น เช่นเดียวกับที่เรามีอาร์เรย์ 6 องค์ประกอบที่มีค่าที่ซ้ำกัน เช่น {1,