static void Part_one() { var data = DataSeed.GetData(); var results = ReportRepairer.FindPair(data); Console.WriteLine($"Pair found: [{results[0]}, {results[1]}]"); Console.WriteLine($"Result: {results[0] * results[1]}"); }
static void Part_two() { var data = DataSeed.GetData(); var results = ReportRepairer.FindTriplet(data); Console.WriteLine($"Triplet found: [{results[0]}, {results[1]}, {results[2]}] ({results[0] + results[1] + results[2]})"); Console.WriteLine($"Result: {results[0] * results[1] * results[2]}"); }
private static void FindValidPasswords(ValidatorRule ruleType) { Func <string, bool> validatorRule = null; switch (ruleType) { case ValidatorRule.ORIGINAL: validatorRule = PasswordValidator.ValidateOriginalRule; break; case ValidatorRule.POSITIONAL: validatorRule = PasswordValidator.ValidatePositionalRule; break; default: throw new ArgumentException("Validator rule not supported"); } ; var passwords = DataSeed.GetData(); var validCount = 0; foreach (var password in passwords) { var valid = validatorRule(password); if (valid) { validCount++; } Console.WriteLine($"{password} => {valid}"); } Console.WriteLine($"\nTotal passwords: {passwords.Count()}"); Console.WriteLine($"Total valid passwords: {validCount}"); }