Skip to content

Instantly share code, notes, and snippets.

@GeorgiPachov
Created May 29, 2014 20:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save GeorgiPachov/89db786c2ba9efc651e3 to your computer and use it in GitHub Desktop.
Save GeorgiPachov/89db786c2ba9efc651e3 to your computer and use it in GitHub Desktop.
getSmallestMultiple
@Override
public long getSmallestMultiple(int upperBound) {
long result = 1;
for (int i = 2; i <= upperBound; i++) {
int[] divisors = getDivisors(i);
int pointer = 0;
while (result%i != 0){
result*=divisors[pointer++];
}
}
return result;
}
private static int[] getDivisors(int number) {
int[] divisors = new int[number];
int pointer = 0;
for (int i = 2; i <= number; i++) {
if (number % i == 0) {
divisors[pointer++] = i;
number /= i;
i--;
}
}
return divisors;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment