Skip to content

Instantly share code, notes, and snippets.

@IvanZelenskyy
Created April 19, 2016 16:02
Show Gist options
  • Save IvanZelenskyy/53e67ef628741604dd5645ffc6c632d2 to your computer and use it in GitHub Desktop.
Save IvanZelenskyy/53e67ef628741604dd5645ffc6c632d2 to your computer and use it in GitHub Desktop.
import java.util.Arrays;
import java.util.stream.IntStream;
public class Puzzle {
public static int[] unpack(int x){
return IntStream.iterate(x, i -> i/10).limit(8).map(i->i%10).toArray();
}
private static boolean isSolution(int[] variables) {
return (variables[5]!=0) &&
(variables[0] + variables[1] - 9 == 4)
&& ((variables[2] - variables[3]) * variables[4] == 4)
&& ( variables[5] + variables[6] - variables[7] == 4)
&& ((variables[0] + variables[2]) / variables[5] == 4)
&& ((variables[1] - variables[3]) * variables[6] == 4)
&& (9 - variables[4] - variables[7] == 4);
}
public static void main(String[] args) {
IntStream.range(1,100000000)
.parallel()
.filter(x->isSolution(unpack(x)))
.forEach(x -> System.out.println(Arrays.toString(unpack(x))));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment