Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -module(problem3).
- -export([solve/0]).
- -include_lib("eunit/include/eunit.hrl").
- primes(N) when N == 1 ->
- [1];
- primes(N) ->
- primes(N, [], 2).
- primes(1, Primes, _) -> Primes;
- primes(N, Primes, Try) when N rem Try == 0 ->
- primes(N div Try, [Try | Primes], Try);
- primes(N, Primes, Try) ->
- primes(N, Primes, Try + 1).
- solve() ->
- lists:max(primes(600851475143)).
- primes_test_() ->
- [
- ?_assertMatch([1], primes(1)),
- ?_assertMatch([3,2], primes(6)),
- ?_assertMatch([13], primes(13)),
- ?_assertMatch([13,5,3],primes(195))
- ].
- solve_test_() ->
- [
- ?_assertMatch(6857,solve())
- ].
Add Comment
Please, Sign In to add comment