Test | Status | Code Input and Output |
---|---|---|
1 | Pass |
memfib = memoize_this(@fib);
[seq, n1] = fib(1, memfib);
assert(n1 == 1);
[seq, n2] = fib(20, memfib);
assert(n2 - n1 == 19);
[seq, n3] = fib(100, memfib);
assert(n3 - n2 == 81);
function [seq, n] = fib(n, memfib)
persistent num
if isempty(num)
num = 1;
else
num = num + 1;
end
if n < 3
seq = ones(1, n);
else
seq = memfib(n-1, memfib);
seq = [seq, seq(end-1) + seq(end)];
end
n = num;
end
|
1600 Solvers
386 Solvers
Piecewise linear interpolation
298 Solvers
299 Solvers
Pandigital Multiples of 11 (based on Project Euler 491)
44 Solvers
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!