Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function cardGame(array) {
- let players={};
- for(let element of array){
- let playerName=element.slice(0,element.indexOf(": "));
- let cards=element.slice(element.indexOf(" ")+1,).split(', ');
- if(!players.hasOwnProperty(playerName)){
- players[playerName]=cards;
- }else{
- players[playerName].push.apply(players[playerName],cards);
- }
- }
- for(let player in players){
- let currSet=new Set(players[player]);
- players[player]=Array.from(currSet);
- players[player]["totalPoints"]=0;
- }
- for(let player in players){
- for(let card of players[player]){
- let cardPower;
- let cardType;
- if(card.length==2){
- [cardPower,cardType]=card.split('');
- }else{
- cardType=card.split('').pop();
- cardPower=card.slice(0,2);
- }
- switch(cardPower){
- case'2':
- cardPower=2;
- break;
- case'3':
- cardPower=3;
- break;
- case '4':
- cardPower=4;
- break;
- case'5':
- cardPower=5;
- break;
- case'6':
- cardPower=6;
- break;
- case'7':
- cardPower=7;
- break;
- case'8':
- cardPower=8;
- break;
- case'9':
- cardPower=9;
- break;
- case'10':
- cardPower=10;
- break;
- case'J':
- cardPower=11;
- break;
- case'Q':
- cardPower=12;
- break;
- case'K':
- cardPower=13;
- break;
- case'A':
- cardPower=14;
- break;
- }
- switch(cardType){
- case 'S': cardType=4;break;
- case 'H': cardType=3;break;
- case 'D': cardType=2;break;
- case 'C': cardType=1;break;
- }
- players[player]["totalPoints"]+=cardType*cardPower;
- }
- }
- for(let player in players){
- console.log(`${player}: ${players[player]["totalPoints"]}`)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement