Advertisement
PowerCell46

Bunny Kill JS

Mar 11th, 2023
839
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function bunnyKill(arrayOfArrays) {
  2.  
  3.     let arrayOfArraysFinal = [];
  4.     let bombCoordinates = (arrayOfArrays[arrayOfArrays.length - 1]).split(" ");
  5.     for (let index = 0; index < arrayOfArrays.length - 1; index++) {
  6.         let currentArray = (arrayOfArrays[index]).split(" ");
  7.         arrayOfArraysFinal.push(currentArray);
  8.     }
  9.  
  10.     let dealtDamage = 0;
  11.     let numberOfKills = 0;
  12.  
  13.     for (let i = 0; i < bombCoordinates.length; i++) {
  14.         let currentCoordinates = (bombCoordinates[i]).split(",");
  15.         let currentElement = Number(currentCoordinates.pop());
  16.         let currentArray = Number(currentCoordinates.pop());
  17.         let currentArrayFinal = arrayOfArraysFinal[currentArray];
  18.         arrayOfArraysFinal.splice(currentArray, 1);
  19.         let currentElementFinal = Number(currentArrayFinal[currentElement]);
  20.         if (currentElementFinal > 0) {
  21.             numberOfKills++;
  22.             dealtDamage += currentElementFinal;
  23.         }
  24.         currentArrayFinal.splice(currentElement, 1, 0);
  25.         if (currentElementFinal < 0) {
  26.             currentElementFinal = 0;
  27.         }
  28.        
  29.         if (currentElement - 1 >= 0) {
  30.             let previousElement = Number(currentArrayFinal[currentElement - 1]);
  31.             previousElement -= currentElementFinal;
  32.             currentArrayFinal.splice((currentElement - 1), 1, previousElement);
  33.         }
  34.        
  35.         if (currentElement + 1 < currentArrayFinal.length) {
  36.             let nextElement = Number(currentArrayFinal[currentElement + 1]);
  37.             nextElement -= currentElementFinal;
  38.             currentArrayFinal.splice((currentElement + 1), 1, nextElement);
  39.         }
  40.  
  41.         // console.log(currentArrayFinal);
  42.         arrayOfArraysFinal.splice(currentArray, 0, currentArrayFinal);
  43.  
  44.         if (currentArray - 1 >= 0) {
  45.             let previousArray = currentArray - 1;
  46.             let previousArrayFinal = arrayOfArraysFinal[previousArray];
  47.             arrayOfArraysFinal.splice(previousArray, 1);
  48.             let previousArrayElement = Number(previousArrayFinal[currentElement]);
  49.             previousArrayElement -= currentElementFinal;
  50.             previousArrayFinal.splice(currentElement, 1, previousArrayElement);
  51.  
  52.             if (currentElement - 1 >= 0) {
  53.                 let previousArrayPreviousElement = Number(previousArrayFinal[currentElement - 1]);
  54.                 previousArrayPreviousElement -= currentElementFinal;
  55.                 previousArrayFinal.splice((currentElement - 1), 1, previousArrayPreviousElement);
  56.             }
  57.  
  58.             if (currentElement + 1 < currentArrayFinal.length) {
  59.                 let previousArrayNextElement = Number(previousArrayFinal[currentElement + 1]);
  60.                 previousArrayNextElement -= currentElementFinal;
  61.                 previousArrayFinal.splice((currentElement + 1), 1, previousArrayNextElement);
  62.             }
  63.             // console.log(previousArrayFinal);
  64.             arrayOfArraysFinal.splice(previousArray, 0, previousArrayFinal);
  65.         }
  66.  
  67.         if (currentArray + 1 < arrayOfArraysFinal.length) {
  68.             let nextArray = currentArray + 1;
  69.             let nextArrayFinal = arrayOfArraysFinal[nextArray];
  70.             arrayOfArraysFinal.splice(nextArray, 1);
  71.             let nextArrayElement = Number(nextArrayFinal[currentElement]);
  72.             nextArrayElement -= currentElementFinal;
  73.             nextArrayFinal.splice(currentElement, 1, nextArrayElement);
  74.  
  75.             if (currentElement - 1 >= 0) {
  76.                 let nextArrayPreviousElement = Number(nextArrayFinal[currentElement - 1]);
  77.                 nextArrayPreviousElement -= currentElementFinal;
  78.                 nextArrayFinal.splice((currentElement - 1), 1, nextArrayPreviousElement);
  79.             }
  80.  
  81.             if (currentElement + 1 < currentArrayFinal.length) {
  82.                 let nextArrayNextElement = Number(nextArrayFinal[currentElement + 1]);
  83.                 nextArrayNextElement -= currentElementFinal;
  84.                 nextArrayFinal.splice((currentElement + 1), 1, nextArrayNextElement);
  85.             }
  86.             // console.log(nextArrayFinal);
  87.             arrayOfArraysFinal.splice(nextArray, 0, nextArrayFinal);
  88.         }
  89.  
  90.         //    for (let x = 0; x < arrayOfArraysFinal.length; x++) {
  91.         //     let currentArrayPrint = arrayOfArraysFinal[x];
  92.         //     console.log(currentArrayPrint.join(" "))
  93.         //    }
  94.     }
  95.  
  96.     for (let xedni = 0; xedni < arrayOfArraysFinal.length; xedni++) {
  97.         let currentArrayPrint = arrayOfArraysFinal[xedni];
  98.         for (let x = 0; x < currentArrayPrint.length; x++) {
  99.             currentNumber = Number(currentArrayPrint[x]);
  100.             if (currentNumber > 0) {
  101.                 dealtDamage += currentNumber;
  102.                 numberOfKills++;
  103.             }
  104.         }
  105.     }
  106.  
  107.     console.log(dealtDamage);
  108.     console.log(numberOfKills);
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement