Sha256: 00a34dd331ee09a3226ba398cccc7bb62f45e5895a547e24c72abfe8fa9a648f

Contents?: true

Size: 1.95 KB

Versions: 109

Compression:

Stored size: 1.95 KB

Contents

# Palindrome Products

Detect palindrome products in a given range.

A palindromic number is a number that remains the same when its digits are
reversed. For example, `121` is a palindromic number but `112` is not.

Given the definition of a palindromic number, we define a palindrome _product_
to be the product `c`, such that `a * b = c`, where `c` is a palindromic number and
 `a` and `b` are integers (possibly, but _not_ necessarily palindromic numbers).

For example, the palindromic number 9009 can be written as the palindrome
product: `91 * 99 = 9009`.

It's possible (and indeed common) for a palindrome product to be the product
of multiple combinations of numbers. For example, the palindrome product `9` has
the factors `(1, 9)`, `(3, 3)`, and `(9, 1)`.

Write a program that given a range of integers, returns the smallest and largest
palindromic product within that range, along with all of it's factors.

## Example 1

Given the range `[1, 9]` (both inclusive)...

The smallest product is `1`. It's factors are `(1, 1)`.
The largest product is `9`. It's factors are `(1, 9)`, `(3, 3)`, and `(9, 1)`.

## Example 2

Given the range `[10, 99]` (both inclusive)...

The smallest palindrome product is `121`. It's factors are `(11, 11)`.
The largest palindrome product is `9009`. It's factors are `(91, 99)` and `(99, 91)`.

The Scala exercises assume an SBT project scheme. The exercise solution source
should be placed within the exercise directory/src/main/scala. The exercise
unit tests can be found within the exercise directory/src/test/scala.

To run the tests simply run the command `sbt test` in the exercise directory.

For more detailed info about the Scala track see the [help
page](http://exercism.io/languages/scala).


## Source

Problem 4 at Project Euler [http://projecteuler.net/problem=4](http://projecteuler.net/problem=4)

## Submitting Incomplete Solutions
It's possible to submit an incomplete solution so you can see how others have completed the exercise.

Version data entries

109 entries across 109 versions & 1 rubygems

Version Path
trackler-2.2.1.104 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.103 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.102 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.101 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.100 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.99 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.98 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.97 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.96 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.95 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.94 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.93 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.92 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.91 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.90 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.89 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.88 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.87 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.86 tracks/scala/exercises/palindrome-products/README.md
trackler-2.2.1.85 tracks/scala/exercises/palindrome-products/README.md