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

Method init2

app/src/main/java/cs/threephase/Search.java:307–357  ·  view source on GitHub ↗
(int sym, int lm)

Source from the content-addressed store, hash-verified

305 }
306
307 boolean init2(int sym, int lm) {
308 c1.copy(c);
309 for (int i=0; i<length1; i++) {
310 c1.move(move1[i]);
311 }
312
313 switch (Center1.finish[sym]) {
314 case 0 :
315 c1.move(fx1);
316 c1.move(bx3);
317 move1[length1] = fx1;
318 move1[length1+1] = bx3;
319 add1 = true;
320 sym = 19;
321 break;
322 case 12869 :
323 c1.move(ux1);
324 c1.move(dx3);
325 move1[length1] = ux1;
326 move1[length1+1] = dx3;
327 add1 = true;
328 sym = 34;
329 break;
330 case 735470 :
331 add1 = false;
332 sym = 0;
333 }
334 ct2.set(c1.getCenter(), c1.getEdge().getParity());
335 int s2ct = ct2.getct();
336 int s2rl = ct2.getrl();
337 int ctp = ctprun[s2ct*70+s2rl];
338
339 c1.value = ctp + length1;
340 c1.length1 = length1;
341 c1.add1 = add1;
342 c1.sym = sym;
343 p1SolsCnt++;
344
345 FullCube next;
346 if (p1sols.size() < PHASE2_ATTEMPTS) {
347 next = new FullCube(c1);
348 } else {
349 next = p1sols.poll();
350 if (next.value > c1.value) {
351 next.copy(c1);
352 }
353 }
354 p1sols.add(next);
355
356 return p1SolsCnt == PHASE1_SOLUTIONS;
357 }
358
359 boolean search2(int ct, int rl, int maxl, int lm, int depth) {
360 if (ct==0 && ctprun[rl] == 0) {

Callers 1

search1Method · 0.95

Calls 8

copyMethod · 0.95
getCenterMethod · 0.80
getrlMethod · 0.80
moveMethod · 0.45
setMethod · 0.45
getParityMethod · 0.45
getEdgeMethod · 0.45
getctMethod · 0.45

Tested by

no test coverage detected