v.2.0.2 doBacktracking return Matrix-String
This commit is contained in:
@@ -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('_', '~'),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user