Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class handsOfCards {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
- String[] input = scan.nextLine().split(":");
- Map<String, Integer> data = new LinkedHashMap<>();
- while (!input[0].equals("JOKER")) {
- HashSet<String> cards = new HashSet<>(Arrays.asList(input[1].split(",")));
- int sum = sumOfCards(cards);
- if (!data.containsKey(input[0])) {
- data.put(input[0], sum);
- } else {
- data.put(input[0], data.get(input[0] + sum));
- }
- input = scan.nextLine().split(":");
- }
- data.forEach((key, value) -> System.out.printf("%s: %d%n", key, value));
- }
- private static int sumOfCards(HashSet<String> cards) {
- int sum = 0;
- for (String card : cards) {
- int power = 0;
- if (Character.isDigit(card.charAt(0)) && card.charAt(0) != '1') {
- power += card.charAt(0) - '0';
- } else {
- switch (card.charAt(0)) {
- case '1':
- power += 10;
- break;
- case 'J':
- power += 11;
- break;
- case 'Q':
- power += 12;
- break;
- case 'K':
- power += 13;
- break;
- case 'A':
- power += 14;
- break;
- }
- }
- switch (card.charAt(card.length() - 1)) {
- case 'S':
- power *= 4;
- break;
- case 'H':
- power *= 3;
- break;
- case 'D':
- power *= 2;
- break;
- }
- sum += power;
- }
- return sum;
- }
- }
Add Comment
Please, Sign In to add comment