dilyana2001

Untitled

Jul 21st, 2021 (edited)
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function cardGame(strArr) {
  2.  
  3.     let type = { S: 4, H: 3, D: 2, C: 1 }
  4.     let power = { J: 11, Q: 12, K: 13, A: 14 }
  5.     let players = {}
  6.     for (let line of strArr) {
  7.         let [name, cards] = line.split(': ')
  8.         if (players.hasOwnProperty(name)) {
  9.             players[name].push(...cards.split(', '))
  10.         } else {
  11.             players[name] = cards.split(', ')
  12.         }
  13.     }
  14.     Object.keys(players).forEach(name => {
  15.             let cardSet = new Set(players[name])
  16.             let total = 0
  17.             for (let card of cardSet) {
  18.                 card = card.split('')
  19.                 let cardType = card.pop()
  20.                 let cardPower = card.join('')
  21.                 let points = 0
  22.                 if (isNaN(cardPower)) {
  23.                     points = type[cardType] * power[cardPower]
  24.                 } else {
  25.                     points = type[cardType] * Number(cardPower)
  26.                 }
  27.                 total += points
  28.             }
  29.             players[name] = total
  30.         })
  31.     return Object.keys(players).map(name => `${name}: ${players[name]}`).join('\n')
  32. }
Add Comment
Please, Sign In to add comment