Agnieszka dowiedziała się ostatnio, skąd wziął się ciąg Fibonacciego.
Mianowicie, uczony rozważał teoretyczny eksperyment dotyczący szybkości
rozmnażania się stada królików przy następujących założeniach:
- na początku mamy jedną nowo narodzoną parę królików
- każda nowa para staje się płodna po miesiącu życia
- każda płodna para ma co miesiąc jedną parę potomstwa
- króliki są nieśmiertelne.
Wartość F(n) oznacza po prostu liczbę par królików po n miesiącach.
Agnieszka
zastanawia się teraz, jakie byłoby rozwiązanie analogicznego
zagadnienia w przypadku gdyby każda para królików stawała się płodna
dopiero po dwóch miesiącach, ale za to miała co miesiąc dwie nowe pary
potomstwa.
Wejście
W pierwszej linii wejścia znajduje się jedna liczba całkowita t<=5 oznaczająca liczbę testów.
W kolejnych liniach znajdują się poszczególne testy. Każdy z nich składa się z jednej liczby całkowitej n (0<=n<=30).
Wyjście
Dla każdego testu wypisz w osobnej linii liczbę par królików otrzymanych po n miesiącach w eksperymencie Agnieszki.
Przykład
Wejście:
4
0
1
3
4
Wyjście:
1
1
3
5
#include<iostream>
using namespace std;
int suma(int a)
{
int tab[a];
int c,d;
tab[0]=1;
tab[1]=1;
tab[2]=1;
if(a>2)
{ for(int i=2, d=1;i<a;i++,d++)
tab[a]=1+(d*2);
}
return tab[a];
}
int main()
{ int pary[5];
int t;
cin >> t;
if(t<=5)
{
for(int i=0;i<t;i++)
{
cin >> pary[i];
if (pary[i]>30 || pary[i]<0)
{
i--;
}
}
for(int i=0;i<t;i++)
{
cout << suma(pary[i])<< endl;
}
}
return 0;
}