seastar
Member
Tính trước kết quả ở compile time. Khi run chỉ cần access array để lấy kết quả.
Chỉ có ngôn ngữ thượng đẳng mới làm đc ntn,
C++:
class Solution {
public:
int tribonacci(int n) {
return arr_[n];
}
private:
static constexpr array<int, 38> arr_ = [] {
array<int, 38> arr{};
arr[0] = 0;
arr[1] = 1;
arr[2] = 1;
for (int i = 3; i< arr.size(); ++i) {
arr[i] = arr[i-1] + arr[i-2] + arr[i-3];
}
return arr;
}();
};