allowedmoves_tests.c (579B)
1 #include "../test.h" 2 3 bool allowedmoves(size_t n, const uint8_t [n]); 4 5 static char *moves[] = { 6 "U", "U2", "U'", 7 "D", "D2", "D'", 8 "R", "R2", "R'", 9 "L", "L2", "L'", 10 "F", "F2", "F'", 11 "B", "B2", "B'", 12 }; 13 14 void run(void) { 15 char movestr[STRLENMAX]; 16 uint8_t m[100]; 17 int n, i, j; 18 19 fgets(movestr, STRLENMAX, stdin); 20 n = atoi(movestr); 21 22 for (i = 0; i < n; i++) { 23 fgets(movestr, STRLENMAX, stdin); 24 movestr[strcspn(movestr, "\n")] = 0; 25 for (j = 0; j < 18; j++) 26 if (!strcmp(movestr, moves[j])) 27 m[i] = j; 28 } 29 30 printf("%s\n", allowedmoves(n, m) ? "true" : "false"); 31 }