From 1498b15e5622647b7d5aad4e1a3e99649cef0367 Mon Sep 17 00:00:00 2001 From: alinjo Date: Fri, 16 Aug 2024 13:23:39 +0200 Subject: [PATCH] Passed all tests --- src/main/java/com/booleanuk/Scrabble.java | 36 +++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/booleanuk/Scrabble.java b/src/main/java/com/booleanuk/Scrabble.java index 88108a8..17d642d 100644 --- a/src/main/java/com/booleanuk/Scrabble.java +++ b/src/main/java/com/booleanuk/Scrabble.java @@ -1,12 +1,44 @@ package com.booleanuk; +import java.util.HashMap; + public class Scrabble { + + private String word; + private static HashMap Points; + + static { + + Points = new HashMap<>(); + + for (char letter : "AEIOULNRST".toCharArray()) Points.put(letter, 1); + for (char letter : "DG".toCharArray()) Points.put(letter, 2); + for (char c : "BCMP".toCharArray()) Points.put(c, 3); + for (char letter : "FHVWY".toCharArray()) Points.put(letter, 4); + Points.put('K', 5); + for (char letter : "JX".toCharArray()) Points.put(letter, 8); + for (char letter : "QZ".toCharArray()) Points.put(letter, 10); + + } + public Scrabble(String word) { + this.word = word.toUpperCase(); + } public int score() { - return -1; - } + int totalPoints = 0; + + for (char letter : word.toCharArray()) { + + if (Points.containsKey(letter)) { + + totalPoints = totalPoints + Points.get(letter); + + } + } + return totalPoints; + } }