diff --git a/apps/n-dame-problem/src/n-dame-problem.controller.ts b/apps/n-dame-problem/src/n-dame-problem.controller.ts index 09e0135..7946eea 100644 --- a/apps/n-dame-problem/src/n-dame-problem.controller.ts +++ b/apps/n-dame-problem/src/n-dame-problem.controller.ts @@ -38,8 +38,20 @@ export class NDameProblemController { @Query('starting-position', new DefaultValuePipe(-1), ParseIntPipe) startingPosition: number, ) { - return this.nDameProblemService - .doBacktracking(startingPosition, modelSize) - .map((row) => row.map((col) => (col ? 'X' : '.'))); + const backtrackMatrix: boolean[][] = + this.nDameProblemService.doBacktracking(startingPosition, modelSize); + + const resultMatrix = backtrackMatrix.map((row: boolean[]) => + row.map((b: boolean) => (b ? ' X' : ' .')), + ); + const verticalLine = ' '.concat(''.padStart(modelSize * 2, '_'), ' '); + const resultMatrixStr = '\n|'.concat( + resultMatrix.map((row) => row.join('').concat('|\n')).join('|'), + ); + + return verticalLine.concat( + resultMatrixStr, + verticalLine.replaceAll('_', '~'), + ); } } diff --git a/package.json b/package.json index 8618184..662eff5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "backtracking", - "version": "2.0.1", + "version": "2.0.2", "description": "", "author": "", "private": true,