Показать сообщение отдельно
  #85 (permalink)  
Старый 31.07.2012, 16:09
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от oneguy Посмотреть сообщение
Вы неправильно поняли условие задачи, нужно вставить именно литерал регулярного выражения, а не идентификатор, то есть регулярка должна быть постоянной.
..... какая разница, там eval'ится литерал в "хайде". всё равно он постоянный - хоть в переменной, хоть и не в переменной.
function gcd(m, n) {
  return (Array(m+1).join("*")+","+Array(n+1).join("*")).match(/(.+)(?=\1*,\1+$)/)[0].length;
}

alert( gcd(3, 4) ); // 1  - :) 
alert( gcd(3, 6) ); // 3
alert( gcd(15, 25) ); // 5
alert( gcd(35, 42) ); // 7
alert( gcd(42, 35) ); // 7 (!) - порядок чисел неважен.

... либо я туплю, не понимаю, о чём Вы, и прошу пояснить.

Последний раз редактировалось melky, 31.07.2012 в 16:11.
Ответить с цитированием