Как посчитать количество ходов фигуры

Вам дается квадратная сетка с обычными . и заблокированными X ячейками. Ваша игровая фигура может перемещаться по любой строке или столбцу или диагонали, пока не достигнет края сетки или заблокированной ячейки. Учитывая сетку, начальную и конечную позиции, определите количество ходов, чтобы добраться до конечной позиции.

function minWalk(gridList, startX, startY, endX, endY) {
        if(gridList>1&&gridList<100){
        if(startX>=0 &&startY<=gridList){
        if(endX>=0&&endY<=gridList){
            let stepCount=0;
          while(startX!=endX&&startY!=endY){
            if(startX>endX){
                startX--;
            }
            else startX++;
            if(startY>endY)startY--;
            else startY++;
          stepCount++;
          }
        }
        else return console.log('ERROR: incorrect end position');
      }
      else return console.log('ERROR: incorrect start position');
    }
    else return console.log('ERROR: incorrect grid list');
    return stepCount;
}

const result = minWalk(
  [
    '.X.',
    '.X.',
    '...',
  ], 
  2, 1,
  0, 2
); 

Подскажите пожалуйста верна ли логика и какие есть ошибки? Еще допишу проверку на заблокированные ячейки...


Ответы (0 шт):