fix: Various LGTM fixes

This commit is contained in:
Panquesito7
2020-06-23 16:34:53 -05:00
parent d958eec03b
commit 48b7773b37
4 changed files with 25 additions and 25 deletions

View File

@@ -24,23 +24,23 @@
const uint64_t MAX = 93;
/** Array of computed fibonacci numbers */
uint64_t f[MAX] = {0};
uint64_t numbers[MAX] = {0};
/** Algorithm */
uint64_t fib(uint64_t n) {
if (n == 0)
return 0;
if (n == 1 || n == 2)
return (f[n] = 1);
return (numbers[n] = 1);
if (f[n])
return f[n];
if (numbers[n])
return numbers[n];
uint64_t k = (n % 2 != 0) ? (n + 1) / 2 : n / 2;
f[n] = (n % 2 != 0) ? (fib(k) * fib(k) + fib(k - 1) * fib(k - 1))
numbers[n] = (n % 2 != 0) ? (fib(k) * fib(k) + fib(k - 1) * fib(k - 1))
: (2 * fib(k - 1) + fib(k)) * fib(k);
return f[n];
return numbers[n];
}
/** Main function */