Advertisement
meteor4o

JA-Sets-Exercises-08.HandsOfCards

Oct 4th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.94 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. class Main {
  4.   public static void main(String[] args) {
  5.  
  6.     Scanner sc = new Scanner(System.in);
  7.     Map<String, Set<String>> map = new LinkedHashMap<>();
  8.     String input = sc.nextLine();
  9.  
  10.       while(!input.equals("JOKER")) {
  11.         String[] tokens = input.split("\\: ");
  12.         String name = tokens[0];
  13.         String cards = tokens[1];
  14.        
  15.         String[] card = cards.split(", ");
  16.           if(!map.containsKey(name)) {
  17.             map.put(name, new LinkedHashSet());  
  18.           }
  19.         for(String one:card) {
  20.               map.get(name).add(one);
  21.         }  
  22.  
  23.         input = sc.nextLine();
  24.       }
  25.     for (Map.Entry<String, Set<String>> player : map.entrySet()) {
  26.         int totalValue = 0;
  27.         for(String card:player.getValue()) {
  28.           int power = 0;
  29.           int multipl = 0;
  30.  
  31.           char c = card.charAt(0);
  32.           char m = card.charAt(1);
  33.             switch(c) {
  34.               case 'J':
  35.                 power = 11;
  36.                 break;
  37.               case 'Q':
  38.                 power = 12;
  39.                 break;
  40.               case 'K':
  41.                 power = 13;
  42.                 break;
  43.               case 'A':
  44.                 power = 14;
  45.                 break;  
  46.               case '1':
  47.                 power = 10;
  48.                 m = card.charAt(2);
  49.                 break;
  50.               default:
  51.                 power = Character.getNumericValue(c);  
  52.             }
  53.             switch(m) {
  54.               case 'S':
  55.                 multipl = 4;
  56.                 break;
  57.               case 'H':
  58.                 multipl = 3;
  59.                 break;
  60.               case 'D':
  61.                 multipl = 2;
  62.                 break;
  63.               case 'C':
  64.                 multipl = 1;
  65.                 break;
  66.             }
  67.             totalValue += multipl * power;
  68.         }
  69.         System.out.printf("%s: %d%n", player.getKey(), totalValue);
  70.     }  
  71.   }  
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement