Clean solution

This commit is contained in:
Nicolai Van der Storm 2024-07-23 14:31:18 +02:00
parent 7a30bacb68
commit d71eb795d7
9 changed files with 26 additions and 4 deletions

View File

@ -1,2 +1,24 @@
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
class Program {
static void Main() {
// get all the words form the text file and put them into a hasset
var words = new List<string>(File.ReadAllLines("input.txt"));
var wordSet = new HashSet<string>(words);
// Find all combos that forn a 6 letter word and make sure we dont have duplicates
var seenCombinations = new HashSet<string>();
var combos = words.SelectMany(
word1 => words.Where(word2 => word1 != word2),
(word1, word2) => new { word1, word2, combinedWord = word1 + word2 }
).Where(
x => x.combinedWord.Length == 6 && wordSet.Contains(x.combinedWord)
).Where(
x => seenCombinations.Add($"{x.word1}+{x.word2}")
).Select(
x => $"{x.word1}+{x.word2}={x.combinedWord}"
).ToList();
// echo out all found words
combos.ForEach(Console.WriteLine);
}
}

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("6letterwordexercise")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+2ee45d0c33abdc2258987bbae591edb100ebb81b")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+7a30bacb68910559e2c2bc33337d57c1364a1b60")]
[assembly: System.Reflection.AssemblyProductAttribute("6letterwordexercise")]
[assembly: System.Reflection.AssemblyTitleAttribute("6letterwordexercise")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
11bb087ea0f446bb0d874c8a6517161613518f7e65c34da03edbfc9d8b21c232
38d39cd6b0bba17b8e33dc8144efa9e3646f6745189f6a226aa41ca2ccf216ba