ผลต่างระหว่างรุ่นของ "418531 ภาคต้น 2552/โจทยปัญหาอัลกอริทึมแบบแบ่งแยกแล้วเอาชนะ/เฉลยข้อ 6"
ไปยังการนำทาง
ไปยังการค้นหา
Cardcaptor (คุย | มีส่วนร่วม) |
|||
(ไม่แสดง 1 รุ่นระหว่างกลางโดยผู้ใช้คนเดียวกัน) | |||
แถว 2: | แถว 2: | ||
เราจะพิสูจน์ข้อความนี้ด้วย induction | เราจะพิสูจน์ข้อความนี้ด้วย induction | ||
− | (Base Case) ในกรณีนี้ <math>n = 1 \,</math> ซึ่งเราจะได้ว่า <math>\begin{bmatrix} 1 & 1 \\ 0 | + | (Base Case) ในกรณีนี้ <math>n = 1 \,</math> ซึ่งเราจะได้ว่า <math>\begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix}^1 = \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix} = \begin{bmatrix} f_2 & f_1 \\ f_1 & f_0 \end{bmatrix} \,</math> |
− | (Induction Case) สมมติให้ <math>\begin{bmatrix} 1 & 1 \\ 0 | + | (Induction Case) สมมติให้ <math>\begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix}^n = \begin{bmatrix}f_{n+1} & f_n \\ f_n & f_{n-1} \end{bmatrix}</math> สำหรับ <math>n \geq 1 \,</math> บางตัว เราได้ว่า <math>\begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix}^{n+1} = \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix} \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix}^n = \begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix} \begin{bmatrix} f_{n+1} & f_n \\ f_n & f_{n-1} \end{bmatrix} = \begin{bmatrix} f_{n+1} + f_n & f_n + f_{n-1} \\ f_{n+1} + 0 & f_n + 0\end{bmatrix} = \begin{bmatrix} f_{n+2} & f_{n+1} \\ f_{n+1} & f_n \end{bmatrix}</math> |
+ | |||
+ | ฉะนั้นเราจึงสามารถสรุปได้ว่าข้อความที่ต้องการพิสูจน์เป็นจริงสำหรับจำนวนเต็มบวก <math>n \,</math> ทุกจำนวน | ||
+ | |||
+ | == ข้อย่อย 2 == | ||
+ | จากข้อย่อย 1 เราสามารถคำนวณ <math>f_n</math> ได้ด้วยการคำนวณ <math>\begin{bmatrix}1 & 1 \\ 1 & 0 \end{bmatrix}^n</math> ซึ่งเราสามารถใช้อัลกอริทึีมได้ เพียงแต่เปลี่ยนการคูณจำนวนเต็มเป็นการคูณเมตริกซ์เท่านั้น เนื่องจากการคูณเมตริกซ์ขนาด 2 x 2 สามารถทำได้ใน <math>O(1) \,</math> เราจึงได้ว่าเราสามารถคำนวณ <math>f_n \,</math> ได้ในเวลา <math>O(\log n) \,</math> |
รุ่นแก้ไขปัจจุบันเมื่อ 14:28, 4 กันยายน 2552
ข้อย่อย 1
เราจะพิสูจน์ข้อความนี้ด้วย induction
(Base Case) ในกรณีนี้ ซึ่งเราจะได้ว่า
(Induction Case) สมมติให้ สำหรับ บางตัว เราได้ว่า
ฉะนั้นเราจึงสามารถสรุปได้ว่าข้อความที่ต้องการพิสูจน์เป็นจริงสำหรับจำนวนเต็มบวก ทุกจำนวน
ข้อย่อย 2
จากข้อย่อย 1 เราสามารถคำนวณ ได้ด้วยการคำนวณ ซึ่งเราสามารถใช้อัลกอริทึีมได้ เพียงแต่เปลี่ยนการคูณจำนวนเต็มเป็นการคูณเมตริกซ์เท่านั้น เนื่องจากการคูณเมตริกซ์ขนาด 2 x 2 สามารถทำได้ใน เราจึงได้ว่าเราสามารถคำนวณ ได้ในเวลา