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

Method init

app/src/main/java/solver/UFO.java:9–38  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

7 static int[] movei = {5, 1, 1, 1};
8 static boolean ini = false;
9 static void init() {
10 if (ini) return;
11 int[] arr = new int[11];
12 int[] temp = new int[11];
13 pd = new int[39916800 / 8];
14 Arrays.fill(pd, -1);
15 Utils.setPruning(pd, 0, 0);
16 for (int d = 0; d < 14; d++) {
17 int n = 0;
18 for (int i = 0; i < 39916800; i++) {
19 if (Utils.getPruning(pd, i) == d) {
20 Utils.set11Perm(temp, i, 11);
21 for (int k = 0; k < 4; k++) {
22 System.arraycopy(temp, 0, arr, 0, 11);
23 //Map.set11Perm(arr, i);
24 for (int m = 0; m < movei[k]; m++) {
25 move(arr, k);
26 int next = Utils.get11Perm(arr, 11);
27 if (Utils.getPruning(pd, next) == 0xf) {
28 Utils.setPruning(pd, next, d + 1);
29 n++;
30 }
31 }
32 }
33 }
34 }
35 //Log.w("dct", d+1+"\t"+n);
36 }
37 ini = true;
38 }
39
40 static void move(int[] perm, int m) {
41 switch (m) {

Callers

nothing calls this directly

Calls 5

setPruningMethod · 0.95
getPruningMethod · 0.95
set11PermMethod · 0.95
moveMethod · 0.95
get11PermMethod · 0.95

Tested by

no test coverage detected