Петко обнови решението на 10.10.2012 12:55 (преди около 12 години)
+require "prime"
+
+class Integer
+ def prime_divisors
+ Prime.prime_division(self).collect{|element| element.first}
+ end
+end
Към профила на Петко Борджуков
........ Finished in 0.00833 seconds 8 examples, 0 failures
prime
. Допълнително, това беше нещо, което трябваше да попиташ на форумите. Ще го добавя в условието.self.
-а ти е излишенmap { |element| count element }
. От вътрешната страна на скобите при хеш не се - {:foo => 1, :bar => 2}
.Регулярни изрази може ли да ползваме? :)
Може да се изсуши оше повече, ако мънкипачна и метод divides?, но нещо не ми харесва тази идея..
Супер!
Имаш две бонус точки от нас. Няколко коментара:
2.upto(abs)
е по-добре от (2..abs)
. Най-вече заради скобите.map
-а не е готин с този next
. Наистина, кода е по-кратък, отколкото с if/else
, но има внезапни излизания от блока. Можеш да мине без тях и кода също щеше да е толкова прост.and
и or
над &&
и ||