Série de Fibonacci
Publicado por Oberlan C. Romão (última atualização em 29/05/2010)
[ Hits: 6.194 ]
Homepage: http://twitter.com/oberlan
Um dos grandes problemas de quem participa de algum campeonato de programação e tem que fazer o programa gerar respostas rápidas é fazer a série de Fibonacci de forma eficiente. Pensando nisso resolvi apresentar uma solução.
O programa usa programação dinâmica, ou seja, ele vai armazenado as soluções que são encontradas, o que acelera o calculo da série.
#include <iostream> #define ll long long #define MAX 200 using namespace std; ll tab[MAX]; void ini_fibo(){ for(int i=0; i<MAX; ++i) tab[i] = -1; tab[0] = 0; tab[1] = 1; } ll fibo(ll n){ if(tab[n] != -1) return tab[n]; ll i = 2; for(; i<=n; ++i) if(tab[i] == -1) break; for(; i<=n; ++i) tab[i] = tab[i-1] + tab[i-2]; return tab[n]; } int main(){ ll n; cin >> n; ini_fibo(); while (n){ cout << "Fibonacci(" << n << ") = " << fibo(n) << endl; cin >> n; } return 0; }
clean.h - Biblioteca para limpar um determinado espaço no terminal
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Direcionar uma URL para Outra No Mikrotik (0)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (1)