Arxero

Untitled

Feb 15th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve (input) {
  2.     let fieldSize = +(input[0]);
  3.     let bugs = input[1].split(' ').map(el => +(el));
  4.     if (input[1] === '') {
  5.         bugs = [];
  6.     }
  7.     let commands = input.slice(2);
  8.     let field = [];
  9.    
  10.     // initial field
  11.     for (let i = 0; i < fieldSize; i++) {
  12.         bugs.indexOf(i) !== -1 ? field.push(1) : field.push(0);
  13.     }
  14.    
  15.     for (let c in commands) {
  16.         let temp = commands[c].split(' ');
  17.         let position = +(temp[0]);
  18.         if (commands[c] === '' || position < 0 || position >= fieldSize || field[position] !== 1) {
  19.             continue;
  20.         }
  21.         let right = 'right' === temp[1];
  22.         let step = +(temp[2]);
  23.         field[position] = 0; // Bug flies away
  24.        
  25.         while (position >= 0 && position < fieldSize) { // while flying in the field
  26.             right ? position += step : position -= step;  // go right or left
  27.            
  28.             if (field[position] === 0) { // check for empty spot
  29.                 field[position] = 1;
  30.                 break;
  31.             }
  32.         }
  33.     }
  34.     console.log(field.join(' '));
  35. }
Add Comment
Please, Sign In to add comment