(int ct, int cp, int co, int d, int l)
| 90 | } |
| 91 | |
| 92 | static boolean search(int ct, int cp, int co, int d, int l) { |
| 93 | if (d == 0) return ct == 0 && co == 0 && cp == 0; |
| 94 | if (ctd[ct] > d || cd[co * 12 + cp] > d) return false; |
| 95 | for (int k = 0; k < 4; k++) { |
| 96 | if (k != l) { |
| 97 | int p = ct, q = cp, r = co; |
| 98 | for (int m = 0; m < 2; m++) { |
| 99 | p = ctm[p][k]; q = cpm[q][k]; r = com[r][k]; |
| 100 | //System.out.println(p+", "+q+", "+r+": "+search(p, q, r, d-1, k)); |
| 101 | if (search(p, q, r, d-1, k)) { |
| 102 | seq[d] = k << 1 | m; |
| 103 | //sol.append("RULB".charAt(k)).append(suff[m]).append(' '); |
| 104 | return true; |
| 105 | } |
| 106 | } |
| 107 | } |
| 108 | } |
| 109 | return false; |
| 110 | } |
| 111 | |
| 112 | public static String scramble() { |
| 113 | int ct = r.nextInt(360), cp, co; |
no outgoing calls
no test coverage detected