MCPcopy Create free account
hub / github.com/MeigenChou/DCTimer-Android / search

Method search

app/src/main/java/solver/Gear.java:67–84  ·  view source on GitHub ↗
(int cp, int ep1, int ep2, int ep3, int eo, int d, int l)

Source from the content-addressed store, hash-verified

65 }
66
67 private static boolean search(int cp, int ep1, int ep2, int ep3, int eo, int d, int l) {
68 if (d == 0) return cp == 0 && ep1 == 0 && ep2 == 0 && ep3 == 0 && eo == 0;
69 if (Math.max(Math.max(pd[0][24 * cp + ep1], pd[1][24 * cp + ep2]), pd[2][24 * cp + ep3]) > d) return false;
70 for (int n = 0; n < 3; n++)
71 if (n != l) {
72 int cn = cp, e1n = ep1, e2n = ep2, e3n = ep3, en = eo;
73 for (int m = 0; m < 11; m++) {
74 cn = cpm[cn][n]; e1n = epm[e1n][n]; e2n = epm[e2n][(n + 1) % 3];
75 e3n = epm[e3n][(n + 2) % 3]; en = eom[en][n];
76 if (search(cn, e1n, e2n, e3n, en, d - 1, n)) {
77 seq[d] = n * 11 + m;
78 //sb.insert(0, turn[n] + suff[m] + " ");
79 return true;
80 }
81 }
82 }
83 return false;
84 }
85
86 public static String scramble() {
87 Random r = new Random();

Callers 1

scrambleMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected