Цитата:
Цитата:
|
oneguy, что-то получилось.
кто не хочет - пусть не смотрит.
// это такой хайд :)
var reg = eval(Array.prototype.map.call("2+1.,+B@_4-/_4.',2", function (a) { return String.fromCharCode(a.charCodeAt() - 3); }).join(''));
// рега без флагов !
alert( false === reg.global === reg.ignoreCase === reg.multiline );
function gcd(m, n) {
return (Array(m+1).join("*")+","+Array(n+1).join("*")).match(reg)[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 (!) - порядок чисел неважен.
|
Цитата:
|
Не, не знаю как решить
|
Цитата:
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,
Да, извините, я не сразу понял, что там регулярка просто закодирована и не зависит ни от каких данных. Засчитал. Решили с моей подсказкой или без? |
По ходу я конкретный тормоз >.< Еси до этого не додумался
|
Цитата:
Код:
1. gcd(2, 4) - простое и составноебыло 3 варианта, два - неверные. после того, как зашел на форум, увидел подсказку, и понял, что я на верном пути. дальше я всё время добивал регулярку :) |
melky,
oneguy, раз уж я не понимаю регулярку melky - можете мне её пожалуста объяснить, вот как я её вижу / (.+) // просто получаем все содержимое (?=\1* // опять получаем все содержимое ,\1+$) // <<<<----WTH? / |
oneguy,
melky, в общем я то думал что хорошо знаю реги (они мне в отличии от других людей быстро и понятно давались, но в 4-ом Флэнагане(как же писать его имя не жирным шрифтом ;) )(и по которому я учился) не было того что написал melky), а в результате я их не очень хорошо знаю |
| Часовой пояс GMT +3, время: 11:58. |