CheckCombinations.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package solver
  2. // Iterate through all combination of blocks and validate them.
  3. func (solver *Solver) CheckCombinations() {
  4. for rows1Index := range solver.row1s {
  5. for rows2Index := range solver.row2s {
  6. for rows3Index := range solver.row3s {
  7. for rows4Index := range solver.row4s {
  8. for rows5Index := range solver.row5s {
  9. for rows6Index := range solver.row6s {
  10. for rows7Index := range solver.row7s {
  11. for rows8Index := range solver.row8s {
  12. for rows9Index := range solver.row9s {
  13. solver.validator(rows1Index, rows2Index, rows3Index, rows4Index, rows5Index, rows6Index, rows7Index, rows8Index, rows9Index)
  14. }
  15. }
  16. }
  17. }
  18. }
  19. }
  20. }
  21. }
  22. }
  23. }
  24. // Iterate through all combination of blocks and validate.
  25. // First row is set from param
  26. func (solver *Solver) CheckCombinationsLevel1(rows1Index int) {
  27. for rows2Index := range solver.row2s {
  28. for rows3Index := range solver.row3s {
  29. for rows4Index := range solver.row4s {
  30. for rows5Index := range solver.row5s {
  31. for rows6Index := range solver.row6s {
  32. for rows7Index := range solver.row7s {
  33. for rows8Index := range solver.row8s {
  34. for rows9Index := range solver.row9s {
  35. solver.validator(rows1Index, rows2Index, rows3Index, rows4Index, rows5Index, rows6Index, rows7Index, rows8Index, rows9Index)
  36. }
  37. }
  38. }
  39. }
  40. }
  41. }
  42. }
  43. }
  44. }