Skip to content

Commit

Permalink
Still working on the white cross...
Browse files Browse the repository at this point in the history
  • Loading branch information
kryzet committed Nov 25, 2024
1 parent 14d62c5 commit 7201fff
Showing 1 changed file with 34 additions and 6 deletions.
40 changes: 34 additions & 6 deletions project_3x3_rubik_solver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -307,18 +307,46 @@ void solveWhiteCross() {
// Find white edges
constexpr size_t N_EDGE_ROWS = 2, N_WHITE_EDGES = 4;
size_t white_edge_positions[N_WHITE_EDGES][3], white_edge_n = 0;
for (size_t face = 0; white_edge_n < N_WHITE_EDGES
&& face < N_FACES; ++face)
for (size_t rows = 0; rows < N_EDGE_ROWS; ++rows) {
for (size_t face = 0; face < N_FACES; ++face)
for (size_t rows = 0; white_edge_n < N_WHITE_EDGES
&& rows < N_EDGE_ROWS; ++rows) {
if ('W' == cube[face][rows][1]) {
white_edge_positions[white_edge_n][0] = face;
white_edge_positions[white_edge_n][1] = rows;
white_edge_positions[white_edge_n][2] = 1;
++white_edge_n;
}
if (LEFT == face || FRONT == face ||
RIGHT == face || BACK == face) { // Middle face

string move;
switch (rows) {
case 2:
switch (face) {
case LEFT:
move += "L";
break;
case FRONT:
move += "F";
break;
case RIGHT:
move += "R";
break;
case BACK:
move += "B";
}
move += " ";
[[fallthrough]];
case 1:
switch (face) {
case LEFT:
move += "F";
break;
case FRONT:
move += "R";
break;
case RIGHT:
move += "";
break;
}
move += " ";
}
}
}
Expand Down

0 comments on commit 7201fff

Please sign in to comment.