コード例 #1
0
ファイル: eights.c プロジェクト: johngoettsche/CS470
Board *makeBoardOnMove(Node *current, Move thisMove, int f){
	Board *newBoard;
	int x = thisMove.x;
	int y = thisMove.y;
	int currentX = current->b->openX;
	int currentY = current->b->openY;
	int mov;
	if(current->b->tile[currentX + x][currentY + y] > 0){
		if((newBoard = (Board *)calloc(1, sizeof(Board))) == NULL) exit(1);
		insertTiles(newBoard, current->b->numbers);
		newBoard->tile[currentX + x][currentY + y] = current->b->tile[currentX][currentY];
		newBoard->tile[currentX][currentY] = current->b->tile[currentX + x][currentY + y];
		mov = newBoard->tile[currentX][currentY];
		completeBoard(current->b, newBoard, mov, f);
		return newBoard;
	}
	return NULL;
}
コード例 #2
0
ファイル: solver.cpp プロジェクト: Wizzcotch/sudoken
void Solver::createFullBoard() {
    setSeeds();
    int unsolved = completeBoard();
    std::cout << "Unsolvable boards generated: " << unsolved << std::endl;
}