Project

General

Profile

« Previous | Next » 

Revision 3feba94e

Added by Leszek Koltunski about 1 year ago

CU_323 solver: return to the old way of moving layers with a twist (we do not move the front layer, we move the middle and back layers to imitate this move and keep edge1 always in place)

View differences:

src/main/java/org/distorted/objectlib/tablebases/TBCuboid323.java
155 155
    return new boolean[][] { {true,false,true},{false,true},{true,true,false} };
156 156
    }
157 157

  
158
///////////////////////////////////////////////////////////////////////////////////////////////////
159
// we map the move (axis=2, middle layer) to move (axis=2,both middle and back layers).
160
// this way we can imitate move of the front layer (which we do not want to move because
161
// the edge1 piece has to always stay in its place)
162

  
163
  @Override
164
  int computeBitLayer(int ax, int layer)
165
    {
166
    if( ax!=2 ) return (1<<layer);
167

  
168
    switch(layer)
169
      {
170
      case 0 : return 1;
171
      case 1 : return 3;
172
      default: return 4;
173
      }
174
    }
175

  
158 176
///////////////////////////////////////////////////////////////////////////////////////////////////
159 177
// specifically for the tablebase
160 178
///////////////////////////////////////////////////////////////////////////////////////////////////
......
183 201

  
184 202
  int[] getHighPruningLevels()
185 203
    {
186
    return new int[] {18};
204
    return new int[] {17,18};
187 205
    }
188 206

  
189 207
///////////////////////////////////////////////////////////////////////////////////////////////////

Also available in: Unified diff