Advertisement
Guest User

Wizard Poker

a guest
Feb 20th, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve (input) {
  2.     let allCards = input.shift().split(':');
  3.     let res = [];
  4.     for (const line of input) {
  5.         if (line === 'Ready') {
  6.             break;
  7.         }
  8.         let tokens = line.split(' ');
  9.         let command = tokens.shift();
  10.         let cardName = tokens.shift();
  11.         switch(command) {
  12.             case 'Add':
  13.             if (allCards.includes(cardName)){
  14.                 res.push(cardName)
  15.             } else {
  16.                 console.log(`Card not found.`);  
  17.             }
  18.             break;
  19.             case 'Insert':
  20.                 let ind = Number(tokens[0]);
  21.                 if (!(allCards.includes(cardName)) || !(ind >= 0 && ind < res.length)) { // pomisli dali da ne e i ind <= res.length
  22.                        console.log('Error!');      
  23.                 } else {
  24.                     res.splice(ind,0,cardName);
  25.                 }
  26.             break;
  27.             case 'Remove':
  28.                 if (allCards.includes(cardName) && res.includes(cardName)) {
  29.                     let indOfCard = res.indexOf(cardName);
  30.                     res.splice(indOfCard, 1);
  31.                 } else {
  32.                     console.log(`Card not found.`)
  33.                 }
  34.             break;
  35.             case 'Swap':
  36.                 let indOf1 = res.indexOf(cardName); // indexa na purvata karta
  37.                 let secondCard = tokens[0];
  38.                 res[indOf1] = secondCard;
  39.                 res[indOf1 + 1] = cardName;
  40.             break;
  41.             case 'Shuffle':
  42.                 res.reverse();
  43.             break;
  44.         }  
  45.     }
  46.     console.log(res.join(' '));  
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement