1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
typedef enum {
U, U2, U3, D, D2, D3,
R, R2, R3, L, L2, L3,
F, F2, F3, B, B2, B3
} move_t;
typedef struct {
uint64_t e;
uint64_t c;
} cube_t;
extern cube_t solvedcube;
extern cube_t errorcube;
bool isconsistent(cube_t);
bool issolved(cube_t);
cube_t readcube(char *);
void writecube(cube_t, char *);
int readmoves(char *, move_t *);
void writemoves(move_t *, int, char *);
cube_t move(cube_t, move_t);
/*
cube_t inverse(cube_t);
*/
|