From 437696f0cd0dfb69f02923d192c979ed3bde9d9d Mon Sep 17 00:00:00 2001 From: loritiernan Date: Fri, 28 Feb 2014 22:15:58 -0500 Subject: [PATCH 1/3] Answer for 3 --- problem03.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/problem03.rb b/problem03.rb index e69de29..fcfad49 100644 --- a/problem03.rb +++ b/problem03.rb @@ -0,0 +1,20 @@ +#The prime factors of 13195 are 5,7,13 and 29 +#what is the largest prime factor of the number 600851475143 + +def prime? n + (2..(n-1)).each { |x| return false if n % x == 0 } + true +end + +n = 600851475143 +a = [] +product_sum = 1 +x = 2 + +while product_sum < n + if n % x == 0 && prime?(x) + a << x + product_sum *= x + end + x += 1 +end From dfa86100595853e4fb146c9b087d0d0e6faff937 Mon Sep 17 00:00:00 2001 From: loritiernan Date: Sat, 1 Mar 2014 10:17:02 -0500 Subject: [PATCH 2/3] Answer 5 --- problem05.rb | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/problem05.rb b/problem05.rb index e69de29..bdbaf5b 100644 --- a/problem05.rb +++ b/problem05.rb @@ -0,0 +1,28 @@ +#2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder. + +#What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20? + +class Numeric + def divisible_to?(x) + self > 0 and x.downto(1).all? { |i| self % i == 0 } + end +end + +def divisible_to(x) + if x < 1 + return false + elsif x == 1 + return 1 + else + n = 0 + step = divisible_to(x-1) + until n.divisible_to? x + n += step + end + + return n + end + +end + +puts divisible_to(20) \ No newline at end of file From 314d1cc062cf20b9af964d9b8d2ee22bc2ab3763 Mon Sep 17 00:00:00 2001 From: loritiernan Date: Sat, 1 Mar 2014 10:47:07 -0500 Subject: [PATCH 3/3] Answer Number 8 --- problem08.rb | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/problem08.rb b/problem08.rb index e69de29..6ef6cce 100644 --- a/problem08.rb +++ b/problem08.rb @@ -0,0 +1,41 @@ +# n = 7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450 +#Find the greatest product of five consecutive digits in the 1000-digit number. +n = <