PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (2): « 1 [2]

> Найдено сообщений: 18
Akar Отправлено: 07 Апреля, 2011 - 23:51:53 • Тема: Вопрос на собеседовании • Форум: Напишите за меня, пожалуйста

Ответов: 30
Просмотров: 379
*facemoptable*

точно ))) чуствую себя по идиотски. пробывал перебрать до 5ти на собеседовании, но не получилось.. видать перенервничал.
Akar Отправлено: 07 Апреля, 2011 - 22:11:59 • Тема: Вопрос на собеседовании • Форум: Напишите за меня, пожалуйста

Ответов: 30
Просмотров: 379
Исправил )

сорри писал втарапях )
Akar Отправлено: 07 Апреля, 2011 - 19:53:38 • Тема: Вопрос на собеседовании • Форум: Напишите за меня, пожалуйста

Ответов: 30
Просмотров: 379
Добрый день,
Проходил сегодня собеседование на должность ПХП программиста, и не смог справиться с одним заданием, и теперь мой моск не может выкинуть эту задачку из головы.

Итак дана функция:
PHP:
скопировать код в буфер обмена
  1. q($n){
  2.     if ($n<=2){
  3.         return 1;
  4.     }else{
  5.         return q($n-q($n-1))+q($n-q($n-2))
  6.     }
  7. }

Как видно тут рекурсия и очень убийственная, настолько что даже при $n=3, апачь ругаеться благим матом что нехватает места в оперативке.

Задание переделать алгоритм так чтобы она работала при q(77)

ПС Остольные вопросы были тревиальными, вывести числа до 100 что деляться на 3 и 5, переделать говнокод в ООП стиль, реализовть паттерн singelton и составить пачку мускл запросов.




UPDATE

ответ найден:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function q($n){
  3.     $n--;
  4.     $array[0]=1;
  5.     $array[1]=1;
  6.  
  7.     for ($i=2; $i<=$n; $i++){
  8.        
  9.             $array[$i] = $array[$i-$array[$i-1]]+$array[$i-$array[$i-2]];
  10.             //echo ($i+1).":".$array[$i]."<br>";
  11.            
  12.     }
  13.     echo "Itog:".$array[$n];
  14. }
  15.  
  16. q(77);
  17. ?>

Страниц (2): « 1 [2]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB