Advertisement
Valleri

JavaScript - 1 April 2013 - Morning - Joro The Naughty

Jul 18th, 2014
639
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function Solve(args) {
  2.     var container = args[0].split(' '); // splitvam purviq red za da vzema n, m, j
  3.     var n = parseInt(container[0]);
  4.     var m = parseInt(container[1]);
  5.     var jumps = parseInt(container[2]);
  6.  
  7.     container = args[1].split(' ');
  8.  
  9.     var start_row = parseInt(container[0]);
  10.     var start_col = parseInt(container[1]);
  11.  
  12.     //creating a "matrix" in javascript....in other words array of arrays
  13.     var matrix = new Array();
  14.     var counter = 1;
  15.     var numbersJumpedOn = [];
  16.  
  17.     for (var i = 0; i < n; i++) {
  18.         matrix[i] = new Array();
  19.         for (var j = 0; j < m; j++) {
  20.             matrix[i][j] = counter++;
  21.         }
  22.     }
  23.  
  24.     //adding starting positions to the arrayList - numbersJumpedOn
  25.     numbersJumpedOn.push(matrix[start_row][start_col]);
  26.  
  27.     var allJumps = [];
  28.  
  29.     for (var i = 0; i < jumps; i++) {
  30.         allJumps.push(args[i + 2]);
  31.     }
  32.  
  33.     var k = 0;
  34.  
  35.     while (true) {
  36.         if(k > jumps-1)
  37.         {
  38.             k = 0;
  39.         }
  40.         var container = allJumps[k].split(' ');
  41.         k++;
  42.  
  43.         var nextJum_row = parseInt(container[0]);
  44.         var nextJum_col = parseInt(container[1]);
  45.  
  46.         start_row += nextJum_row;
  47.         start_col += nextJum_col;
  48.  
  49.         if (start_row < 0 || start_col < 0 || start_row > n - 1 || start_col > m - 1) {
  50.             console.log("escaped " + Sum(numbersJumpedOn));
  51.             break;
  52.         }
  53.         if(numbersJumpedOn.indexOf(matrix[start_row][start_col]) == -1)
  54.         {
  55.             numbersJumpedOn.push(matrix[start_row][start_col]);
  56.         }
  57.         else
  58.         {
  59.             console.log("caught " + numbersJumpedOn.length);
  60.             break;
  61.         }
  62.     }
  63.  
  64.  
  65.     function Sum(arr) {
  66.         var sum = 0;
  67.         for (var i = 0; i < arr.length; i++) {
  68.             sum += arr[i];
  69.         }
  70.         return sum;
  71.     }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement