nissy-core

The "engine" of nissy, including the H48 optimal solver.
git clone https://git.tronto.net/nissy-core
Download | Log | Files | Refs | README | LICENSE

getcube_tests.c (642B)


      1 #include "../test.h"
      2 
      3 cube_t getcube(int64_t, int64_t, int64_t, int64_t);
      4 
      5 void run(void) {
      6 	char str[STRLENMAX];
      7 	oriented_cube_t cube;
      8 	int64_t ep, eo, cp, co;
      9 
     10 	fgets(str, STRLENMAX, stdin);
     11 	ep = atoll(str);
     12 	fgets(str, STRLENMAX, stdin);
     13 	eo = atoll(str);
     14 	fgets(str, STRLENMAX, stdin);
     15 	cp = atoll(str);
     16 	fgets(str, STRLENMAX, stdin);
     17 	co = atoll(str);
     18 
     19 	cube = (oriented_cube_t) {
     20 		.cube = getcube(ep, eo, cp, co),
     21 		.orientation = 0
     22 	};
     23 
     24 	if (iserror(cube)) {
     25 		printf("Error cube\n");
     26 	} else if (!isconsistent(cube)) {
     27 		printf("Inconsistent cube\n");
     28 	} else {
     29 		writecube(cube, NISSY_SIZE_CUBE, str);
     30 		printf("%s\n", str);
     31 	}
     32 }