คำอธิบายปัญหา
สมมติว่าเรามีค่า n เราต้องสร้างเลข Tribonacci ลำดับที่ n เลข Tribonacci คล้ายกับเลข Fibonacci แต่นี่เราสร้างพจน์ใหม่โดยการบวกสามพจน์ก่อนหน้า สมมติว่าเราต้องการสร้าง T(n) สูตรจะเป็นดังนี้:
T(n) = T(n - 1) + T(n - 2) + T(n - 3)
พจน์แรกๆ สำหรับเริ่มต้น คือ {0, 1, 1}
เราสามารถแก้ได้โดยอัลกอริทึมดังนี้:
อัลกอริทึม
• first := 0, second := 1, third := 1 • for i in range n – 3, do o next := first + second + third o first := second, second := third, third := next • return third
ตัวอย่างโค้ด (C++)
#include<iostream> using namespace std; long tribonacci_gen(int n){ //function to generate n tetranacci numbers int first = 0, second = 1, third = 1; for(int i = 0; i < n - 3; i++){ int next = first + second + third; first = second; second = third; third = next; } return third; } main(){ cout << "15th Tribonacci Term: " << tribonacci_gen(15); }นำเข้า
15
ผลลัพธ์
15th Tribonacci Term: 1705