# Difference between revisions of "Euler problems/181 to 190"

From HaskellWiki

CaleGibbard (talk | contribs) |
|||

Line 39: | Line 39: | ||

main = print answer |
main = print answer |
||

+ | </haskell> |
||

+ | |||

+ | == [http://projecteuler.net/index.php?section=problems&id=184 Problem 184] == |
||

+ | Triangles containing the origin. |
||

+ | |||

+ | Solution: |
||

+ | <haskell> |
||

+ | problem_184 = undefined |
||

</haskell> |
</haskell> |

## Revision as of 00:09, 1 March 2008

## Problem 181

Investigating in how many ways objects of two different colours can be grouped.

## Problem 182

RSA encryption.

Solution:

```
fun a1 b1 = sum [ e | e <- [2..a*b-1],
gcd e (a*b) == 1,
gcd (e-1) a == 2,
gcd (e-1) b == 2 ]
where a = a1-1
b = b1-1
problem_182 = fun 1009 3643
```

## Problem 183

Maximum product of parts.

Solution:

```
-- Does the decimal expansion of p/q terminate?
terminating p q = 1 == reduce [2,5] (q `div` gcd p q)
where reduce [] n = n
reduce (x:xs) n | n `mod` x == 0 = reduce (x:xs) (n `div` x)
| otherwise = reduce xs n
-- The expression (round $ fromIntegral n / e) computes the integer k
-- for which (n/k)^k is at a maximum. Also note that, given a rational number
-- r and a natural number k, the decimal expansion of r^k terminates if
-- and only if the decimal expansion of r does.
answer = sum [if terminating n (round $ fromIntegral n / e) then -n else n
| n <- [5 .. 10^4]]
where e = exp 1
main = print answer
```

## Problem 184

Triangles containing the origin.

Solution:

```
problem_184 = undefined
```