Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
For Rubyists who love ProjectEuler.net and enjoy optimizing their solutions
Ruby
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
test
.gitignore
.travis.yml
CHANGELOG.md
Gemfile
LICENSE
README.md
Rakefile
rubeuler.gemspec

README.md

Rubeuler

Leonhard Euler

Gem VersionBuild Status Coverage StatusCode Climate

For Rubyists who enjoy solving and optimizing Project Euler problems. It uses Benchmark so be sure to use this with Ruby >= 1.9.3

Installation

Rubeuler is a Ruby gem, and can be installed using gem install Rubeuler

Usage

The Rubeuler::Problem class should be initialized with two arguments, :number & :answer (problem designator and some ruby code as a string). If the answer to problem one is 42, the code below should produce a successful response

Rubeuler::Problem.new(number: 1, answer: "7*3*2").execute!

Extra options (just one right now):

    answer = "@loop_count = 0; 1001.times do; @loop_count += 1; end; result = 42"

        # Use :tracked option to track extra variables included in your algorithm
    Rubeuler::Problem.new(number: 1, answer: answer, tracked: {loop_count: "@loop_count"}).execute!
    => #<Rubeuler::Result:0x007fef81c221f8
      @data={:solution=>42, :loop_count=>1001},
      @runtime=0.0002689361572265625,
      @success=true>

NOTE: Solutions (see Rubeuler::Solution) are not provided for you. Successfully solve some ProjectEuler problems to build your own list, then use Rubeuler to judge the quality of your solutions. NOTE: The last expression in the :answer argument will be compared to solution predefined in Rubeuler::Solution for that problem number.

Pull requests/issues

Please submit any pull requests through GitHub. Please report any problems with the issue tracker! Thanks.

Something went wrong with that request. Please try again.