Рубрики

ВОРОТА | GATE CS 2008 | Вопрос 74

Рассмотрим следующую программу на C

int f1(int n)

{

  if(n == 0 || n == 1)

    return n;

  else

    return (2*f1(n-1) + 3*f1(n-2));

}

  

int f2(int n)

{

  int i;

  int X[N], Y[N], Z[N] ;

  X[0] = Y[0] = Z[0] = 0;

  X[1] = 1; Y[1] = 2; Z[1] = 3;

  for(i = 2; i <= n; i++)

  {

    X[i] = Y[i-1] + Z[i-2];

    Y[i] = 2*X[i];

    Z[i] = 3*X[i];

  }

  return X[n] ;

}

Время работы f1 (n) и f2 (n)
(А) (n) и (П)
(В) (2 ^ n) и (П)
(С) (n) и (2 ^ п)
(D) (2 ^ n) и (2 ^ п)
(А) А
(Б) Б
(С) С
(D) D

Ответ: (Б)
Объяснение: См. Вопрос 3 в http://espressocode.top/c-language-set-5/.
Тест на этот вопрос

Рекомендуемые посты:

ВОРОТА | GATE CS 2008 | Вопрос 74

0.00 (0%) 0 votes