Advertisement
DraconiusNX

Untitled

Feb 20th, 2023
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function bunnyKill(array) {
  2.  
  3.   let bombCells = array
  4.     .pop()
  5.     .split(" ")
  6.     .map((str) => str.split(",").map((x) => Number(x)));
  7.    
  8.   let matrix = array.map((row) => row.split(" ").map((x) => Number(x)));
  9.  
  10.   let damage = 0;
  11.   let killCounter = 0;
  12.  
  13.   for (let i = 0; i < bombCells.length; i++) {
  14.     let bombRow = bombCells[i][0];
  15.     let bombCol = bombCells[i][1];
  16.     let bombValue = matrix[bombRow][bombCol];
  17.  
  18.     if (bombValue <= 0) {
  19.       continue;
  20.     }
  21.  
  22.     let startRow = Math.max(0, bombRow - 1);
  23.     let endRow = Math.min(bombRow + 1, array.length - 1);
  24.  
  25.     for (let row = startRow; row <= endRow; row++) {
  26.       let startCol = Math.max(0, bombCol - 1);
  27.       let endCol = Math.min(bombCol + 1, array[row].length - 1);
  28.  
  29.       for (let col = startCol; col <= endCol; col++) {
  30.         matrix[row][col] -= bombValue;
  31.       }
  32.     }
  33.  
  34.     killCounter++;
  35.     damage += bombValue;
  36.   }
  37.  
  38.   for (let row = 0; row < matrix.length; row++) {
  39.     for (let col = 0; col < matrix[row].length; col++) {
  40.       if (matrix[row][col] > 0) {
  41.         damage += matrix[row][col];
  42.         killCounter++;
  43.       }
  44.     }
  45.   }
  46.  
  47.   console.log(damage);
  48.   console.log(killCounter);
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement