projects
/
project-euler.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More tweakes to prime generation and testing
[project-euler.git]
/
euler35.rb
diff --git
a/euler35.rb
b/euler35.rb
index d2ba75de75e1c1c3c738cefe8c6ac937f57765a7..a25edfe507f92c359c28d4f8ffd192ec2be6d26b 100644
(file)
--- a/
euler35.rb
+++ b/
euler35.rb
@@
-1,14
+1,15
@@
require 'ruby-prof'
load 'primes.rb'
require 'ruby-prof'
load 'primes.rb'
+load 'array-numbers.rb'
class Array
class Array
- def to_i
- self.map {|d| d.to_s}.join.to_i
- end
+
#
def to_i
+
#
self.map {|d| d.to_s}.join.to_i
+
#
end
- def to_r
- Rational(self[0].to_i, self[1].to_i)
- end
+
#
def to_r
+
#
Rational(self[0].to_i, self[1].to_i)
+
#
end
def all_rotations
(0...self.length).map {|r| self.rotate(r)}
def all_rotations
(0...self.length).map {|r| self.rotate(r)}
@@
-16,26
+17,27
@@
class Array
end
class Integer
end
class Integer
- @@primes = Primes.instance
+
#
@@primes = Primes.instance
- def prime?
- @@primes.include? self
- end
+
#
def prime?
+
#
@@primes.include? self
+
#
end
def pl
@@primes.primes.length
end
def circular_prime?
def pl
@@primes.primes.length
end
def circular_prime?
- self.
to_digits.all_rotations.map {|n| n.to_i}.all? {|n| n.prime?} if self.prime?
+ self.
prime? && self.to_digits.all_rotations.map {|n| n.to_i}.all? {|n| n.prime?}
end
end
- def to_digits
- self.to_s.split('').map {|d| d.to_i}
- end
+
#
def to_digits
+
#
self.to_s.split('').map {|d| d.to_i}
+
#
end
end
end
+
RubyProf.start
# (10**6).prime?
RubyProf.start
# (10**6).prime?