sum_of_multiples: naive solution

This commit is contained in:
Dmitry Kokorin 2016-04-04 16:26:54 +03:00
parent cfb6300361
commit cf7edc784a
2 changed files with 47 additions and 0 deletions

View file

@ -0,0 +1,31 @@
#include "sum_of_multiples.h"
#include <algorithm>
namespace sum_of_multiples {
number_t to(number_t limit)
{
return to({3, 5}, limit);
}
number_t to(const multipliers_t &multipliers, number_t limit)
{
number_t result = 0;
for (number_t i = 0; i < limit; ++i) {
auto is_multiple = [i](number_t m) -> bool {
return i % m == 0;
};
if (std::any_of(multipliers.begin(), multipliers.end(), is_multiple))
result += i;
}
return result;
}
}