Advertisement
Guest User

Untitled

a guest
Feb 26th, 2020
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve(input = []){
  2.  
  3.     let deck = input.shift().split(`:`);
  4.     let newDeck = [];
  5.     let enter;
  6.  
  7.     while((enter = input.shift()) !== `Ready`){
  8.  
  9.         if(enter === `Shuffle deck`){
  10.             newDeck.reverse();
  11.         }
  12.         else{
  13.             let [action, firstCard, indexOrSecondCard] = enter.split(` `);
  14.  
  15.             switch(action){
  16.    
  17.                 case `Add`:
  18.                     if(deck.includes(firstCard)){
  19.                         newDeck.push(firstCard);
  20.                     }
  21.                     else{
  22.                         console.log('Card not found.');
  23.                     }
  24.                     break;
  25.    
  26.                 case `Insert`:
  27.                    
  28.                     let index = Number(indexOrSecondCard)
  29.                     if(deck.includes(firstCard) && (index > -1 && index < newDeck.length)){
  30.                         newDeck.splice(index, 0, firstCard);
  31.                    
  32.                     }
  33.                     else{
  34.                         console.log(`Error!`);
  35.                     }
  36.                     break;
  37.    
  38.                 case `Swap`:
  39.                    
  40.                     let secondCard = indexOrSecondCard;
  41.                     let firstIndex = newDeck.indexOf(firstCard);
  42.                     let secondIndex = newDeck.indexOf(secondCard);
  43.    
  44.                     newDeck[firstIndex] = secondCard;
  45.                     newDeck[secondIndex] = firstCard;
  46.                     break;
  47.    
  48.                 case `Remove`:
  49.                     if(newDeck.includes(firstCard)){
  50.                         let index = newDeck.indexOf(firstCard);
  51.                         if(index != -1){
  52.                             newDeck.splice(index, 1);
  53.                         }
  54.                     }
  55.                     else{
  56.                         console.log('Card not found.');
  57.                     }
  58.                     break;
  59.             }
  60.         }  
  61.     }
  62.     console.log(newDeck.join(` `));
  63. }
  64.  
  65. solve([`Innervate:Moonfire:Pounce:Claw:Wrath:Bite`,
  66. `Add Moonfire`,
  67. `Add Pounce`,
  68. `Add Bite`,
  69. `Add Wrath`,
  70. `Insert Claw 0`,
  71. `Swap Claw Moonfire`,
  72. `Remove Bite`,
  73. `Shuffle deck`,
  74. `Ready`
  75. ])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement