Todorov_Stanimir

03. Piccolo with Map

Jul 10th, 2019
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function piccolo(input) {
  2.     let carsInParking = new Map();
  3.     input.forEach(element => {
  4.         let [command, numberCar] = element.split(', ');
  5.         if (command === 'IN') {
  6.             if (!carsInParking.has(numberCar)) {
  7.                 carsInParking.set(numberCar, 'IN');
  8.             }
  9.         } else if (command === 'OUT') {
  10.             if (carsInParking.has(numberCar)) {
  11.                 delete carsInParking.delete(numberCar);
  12.             }
  13.         }
  14.     });
  15.  
  16.     ([...carsInParking].length === 0)
  17.         ? console.log('Parking Lot is Empty')
  18.         : [...carsInParking].sort((a, b) => a[0].localeCompare(b[0])).forEach(car => console.log(car[0]));
  19. }
  20. piccolo(['IN, CA2844AA',
  21.     'IN, CA1234TA',
  22.     'OUT, CA2844AA',
  23.     'IN, CA9999TT',
  24.     'IN, CA2866HI',
  25.     'OUT, CA1234TA',
  26.     'IN, CA2844AA',
  27.     'OUT, CA2866HI',
  28.     'IN, CA9876HH',
  29.     'IN, CA2822UU'])
  30. piccolo(['IN, CA2844AA',
  31.     'IN, CA1234TA',
  32.     'OUT, CA2844AA',
  33.     'OUT, CA1234TA'])
Advertisement
Add Comment
Please, Sign In to add comment