Also ich versuche, ein Scrabble-Spiel zu arbeiten, ich versuche, ein Wörterbuch mit einem int-Hashset Listen zu verwenden. Ich habe die Buchstaben in Gruppen basierend auf ihrem Wert (key = int = score) wie folgt gesetzt. unter Verwendung des gegebenen Wortes und die Summe aller ZiffernÜberprüfung einer Vielzahl von Hashsets in einem Wörterbuch, um den Schlüsselwert zu bekommen
HashSet<char> pointsONEList = new HashSet<char>(new char[] { 'e', 'a', 'i', 'o', 'n', 'r', 't', 'l', 's', 'u' });
HashSet<char> pointsTwoList = new HashSet<char>(new char[] { 'd', 'g' });
HashSet<char> pointsThreeList = new HashSet<char>(new char[] { 'b', 'c', 'm', 'p' });
HashSet<char> pointsFourList = new HashSet<char>(new char[] { 'f', 'h', 'v', 'w', 'y' });
HashSet<char> pointsFiveList = new HashSet<char>(new char[] { 'k' });
HashSet<char> pointsEightList = new HashSet<char>(new char[] { 'j', 'x' });
HashSet<char> pointsTenList = new HashSet<char>(new char[] { 'q', 'z' });
Dictionary<int, HashSet<char>> letterPoints = new Dictionary<int, HashSet<char>>();
letterPoints.Add(1, pointsONEList);
letterPoints.Add(2, pointsTwoList);
letterPoints.Add(3, pointsThreeList);
letterPoints.Add(4, pointsFourList);
letterPoints.Add(5, pointsFiveList);
letterPoints.Add(8, pointsEightList);
letterPoints.Add(10, pointsTenList);
Als nächstes muss ich einen Weg finden, außer ein Wort zu nehmen und jedes Zeichen in dem Wort zu finden, ist es in der Liste zu finden und dann zu einem anderen Wörterbuch hinzuzufügen.
das ist, was ich
int N = int.Parse(Console.ReadLine());
for (int i = 0; i < N; i++)
{
string W = Console.ReadLine();
int wordValue=0;
char[] splitWord = W.ToCharArray();
for (int j = 0; j < splitWord.Length; j++)
{
for (int h = 0; h < letterPoints.Count; h++)
{
}
}
}
ich bisher haben kann es nicht das gesamte Wörterbuch
hashset speichert nur einzelne Elemente –
Es ist einfacher, nur ein Array der Größe 26 zu haben, das Punkte für jeden Buchstaben enthält, und es wie 'Points [Buchstabe - 'A']' – Lanorkin
oder ein Wörterbuch mit Zeichen als Schlüssel zu referenzieren – slawekwin