Advertisement
stoianpp

Labirinth

May 1st, 2014
247
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function Solve(params) {
  2.     var currentX = +params[1].split(" ")[1];
  3.     var currentY = +params[1].split(" ")[0];
  4.     var xNum = +params[0].split(" ")[1];
  5.     var yNum = +params[0].split(" ")[0];
  6.     var sum = 0; counter = 0;
  7.     for (var i = 2; i < yNum + 2; i++) {
  8.         var repl = params[i];
  9.         params[i] = [];
  10.         for (g = 0; g < xNum; g++) {
  11.             params[i].push(repl[g]);
  12.         }
  13.     }
  14.  
  15.     while (currentX < xNum && currentX >= 0 && currentY < yNum && currentY >= 0 && params[currentY + 2][currentX] != null) {
  16.         sum += currentY * xNum + currentX + 1;
  17.         var moveDirection = params[currentY + 2][currentX];
  18.         params[currentY + 2][currentX] = null;
  19.         counter++;
  20.  
  21.         switch (moveDirection) {
  22.             case "l": currentX--; break;
  23.             case "r": currentX++; break;
  24.             case "u": currentY--; break;
  25.             case "d": currentY++; break;
  26.         }
  27.     }
  28.     if (currentX < xNum && currentX >= 0 && currentY < yNum && currentY >= 0 && params[currentY + 2][currentX] == null) return "lost " + counter;
  29.     return "out " + sum;
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement