| 490 | } |
| 491 | |
| 492 | public static String eofc(String scramble, int side) { |
| 493 | String[] s = scramble.split(" "); |
| 494 | int ep = 1656, eo = 1104, eof = 0; |
| 495 | for (int i = 0; i < s.length; i++) |
| 496 | if (s[i].length() != 0) { |
| 497 | int m = EOline.moveStr[side].indexOf(s[i].charAt(0)); |
| 498 | eo = eom[eo][m]; ep = epm[ep][m]; eof = eom[eof][m]; |
| 499 | if (s[i].length() > 1) { |
| 500 | eo = eom[eo][m]; ep = epm[ep][m]; eof = eom[eof][m]; |
| 501 | if (s[i].charAt(1) == '\'') { |
| 502 | eo = eom[eo][m]; ep = epm[ep][m]; eof = eom[eof][m]; |
| 503 | } |
| 504 | } |
| 505 | } |
| 506 | for (int d = 0; d < 13; d++) { |
| 507 | //Log.w("dct", ""+d); |
| 508 | if (idaeofc(ep, eo, eof, d, -1)) { |
| 509 | StringBuilder sb = new StringBuilder("\n"); |
| 510 | sb.append(sideStr[side]).append(": ").append(EOline.rotateStr[side]); |
| 511 | for (int i = d; i > 0; i--) |
| 512 | sb.append(' ').append(moveStr[0][0].charAt(seq[i] / 3)).append(suff[seq[i] % 3]); |
| 513 | return sb.toString(); |
| 514 | } |
| 515 | } |
| 516 | return "\nerror"; |
| 517 | } |
| 518 | |
| 519 | public static int[][] easyCross(int depth) { |
| 520 | if (!inif) { |