fork download
  1.  
  2. class Ideone {
  3.  
  4. public static void main(String[] args) {
  5. final byte one = 1;
  6. final byte three = 3;
  7. final byte six = 6;
  8. final byte nine = 9;
  9. final byte zero = 0;
  10. final byte[][] maze = new byte[nine][nine];
  11. byte rand = (byte)(Math.random() * nine + one);/* get value 1 to 9 */
  12. System.out.println("Generating suduko maze ...");
  13. for(byte r = zero, c; nine > r; r ++) {
  14. if(three == r || six == r) {
  15. rand = maze[r - three][zero];
  16. rand = nine == rand ? one : (byte)(rand + one);
  17. } else {
  18. rand = zero < r ? maze[r - one][six] : rand;
  19. }
  20. for(c = zero; nine > c; c ++) {
  21. maze[r][c] = rand;
  22. rand = nine == rand ? one : (byte)(rand + one);
  23. }
  24. }
  25. System.out.println("Printing suduko maze ...");
  26. String ln = "\n+--+--+--+--+--+--+--+--+--+";
  27. System.out.print(ln);
  28. for(byte[] r : maze) {
  29. System.out.print("\n|");
  30. for(byte v: r) {
  31. System.out.printf("%2d|", v);
  32. }
  33. System.out.print(ln);
  34. }
  35. System.out.println();
  36. }
  37. }
  38.  
Success #stdin #stdout 0.14s 320576KB
stdin
Standard input is empty
stdout
Generating suduko maze ...
Printing suduko maze ...

+--+--+--+--+--+--+--+--+--+
| 4| 5| 6| 7| 8| 9| 1| 2| 3|
+--+--+--+--+--+--+--+--+--+
| 1| 2| 3| 4| 5| 6| 7| 8| 9|
+--+--+--+--+--+--+--+--+--+
| 7| 8| 9| 1| 2| 3| 4| 5| 6|
+--+--+--+--+--+--+--+--+--+
| 5| 6| 7| 8| 9| 1| 2| 3| 4|
+--+--+--+--+--+--+--+--+--+
| 2| 3| 4| 5| 6| 7| 8| 9| 1|
+--+--+--+--+--+--+--+--+--+
| 8| 9| 1| 2| 3| 4| 5| 6| 7|
+--+--+--+--+--+--+--+--+--+
| 6| 7| 8| 9| 1| 2| 3| 4| 5|
+--+--+--+--+--+--+--+--+--+
| 3| 4| 5| 6| 7| 8| 9| 1| 2|
+--+--+--+--+--+--+--+--+--+
| 9| 1| 2| 3| 4| 5| 6| 7| 8|
+--+--+--+--+--+--+--+--+--+