Advertisement
Guest User

Untitled

a guest
Jun 30th, 2016
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve(args) {
  2.     var nk = args[0].split(' ').map(Number),
  3.         n = +nk[0], k = +nk[1],
  4.         arr = args[1].split(' ').map(Number),
  5.         newArr = [], result = 0,
  6.         rightNeighbour, leftNeighbour,
  7.         i, j, z;
  8.  
  9.  
  10.     if (k === 0) {
  11.         for (z = 0; z < n; z += 1) {
  12.             result += arr[z];
  13.         }
  14.     }
  15.     else {
  16.         for (i = 0; i < k; i += 1) {
  17.             for (j = 0; j < n; j += 1) {
  18.                 if (j === 0) {
  19.                     rightNeighbour = arr[j + 1];
  20.                     leftNeighbour = arr[n - 1];
  21.                 }
  22.                 else if (j === n - 1) {
  23.                     rightNeighbour = arr[0];
  24.                     leftNeighbour = arr[j - 1];
  25.                 }
  26.                 else {
  27.                     rightNeighbour = arr[j + 1];
  28.                     leftNeighbour = arr[j - 1];
  29.                 }
  30.  
  31.                 //-----------------------------
  32.  
  33.                 if (arr[j] === 0) {
  34.                     newArr[j] = Math.abs(leftNeighbour - rightNeighbour);
  35.                 }
  36.                 else if (arr[j] === 1) {
  37.                     newArr[j] = leftNeighbour + rightNeighbour;
  38.                 }
  39.                 else if (arr[j] % 2 === 0) {
  40.                     newArr[j] = Math.max(leftNeighbour, rightNeighbour);
  41.                 }
  42.                 else if (arr[j] % 2 !== 0) {
  43.                     newArr[j] = Math.min(leftNeighbour, rightNeighbour);
  44.                 }
  45.             }
  46.  
  47.             if (i + 1 === k) {
  48.                 for (z = 0; z < n; z += 1) {
  49.                     result += newArr[z];
  50.                 }
  51.             }
  52.             else {
  53.                 for (z = 0; z < n; z += 1) {
  54.                     arr[z] = newArr[z];
  55.                 }
  56.             }
  57.         }
  58.     }
  59.  
  60.     console.log(result);
  61. }
  62.  
  63. // solve(['5 1', '9 0 2 4 1']);
  64. // solve(['10 3', '1 9 1 9 1 9 1 9 1 9']);
  65. // solve(['10 10', '0 1 2 3 4 5 6 7 8 9']);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement