2014年6月16日 星期一

動態規劃

#include <cstdlib>
#include <iostream>
using namespace std;

long long int t[100];

long long int f(long long int n)
{
  if (t[n]!=0) return t[n];
  if (n <=2)
  {
           t[n] = n;
           return t[n];
  }
  else
  {
     t[n] = f(n-1)+f(n-2);
     return t[n];
  }
}

int main()
{
    memset(t,0,100*sizeof(t[0]));
    long long int n;
    while (cin >> n)
       cout << f(n) << ' ' << f(f(n)%n) << endl;
}


沒有留言: