// Сохранить тесты с сайта // HolaWeb.SaveTests(9000, @"D:\Develop\holachallenge\js\testcases"); // Создать файл всех используемых в фильтре слов // File.WriteAllLines(Path.Combine(dir, "words_out.txt"), wordFeatures.Select(f => f.Word).ToArray()); public static void Main() { try { jsonSerializer = new JsonSerializerMaster(); infixCalc = new InfixCalc(jsonSerializer, dir); originalWords = File.ReadAllLines(Path.Combine(dir, "words_uniq.txt")); originalNotWords = File.ReadAllLines(Path.Combine(dir, "notwords_uniq.txt")); words = originalWords.Where(w => !w.EndsWith("'s")).ToArray(); substCalc = new SubstCalc(jsonSerializer, dir); lettersCount = new LettersCount(jsonSerializer); solutionCreator = new SolutionCreator(dir, substCalc); //substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "suffix first.json", 6), false); //substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "prefix first.json", 7), true); //substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "suffix second.json", 6), false); //substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "prefix second.json", 7), false); //substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "suffix third.json", 6), false); // 4.8 по "ing"->"ed" //words = substCalc.ReplaceByCommands(words); substCalc.AddCommand(substCalc.GetFirstPopularSuffixReplaces(), false); substCalc.AddCommand(substCalc.GetPrefixReplaceMap(words), true); substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "trash\\suffix second 3 5 50.json", 5), false); substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "trash\\prefix second 3 5 50.json", 6), true); substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "trash\\suffix third.json", 5), false); substCalc.AddCommand(substCalc.GetAffixReplaceMap(words, "trash\\prefix third.json", 6), true); words = substCalc.ReplaceByCommands(words); mainBloomLength = 61450; Func <WordFeatureRow, bool> isWord = w => w.Length <= 14 && w.VowInRow <= 3 && w.ConsInRow <= 4 && w.Word.Count(c => c == '\'') <= 1; wordFeatures = WordFeatureRow.Convert(words).Where(isWord).ToArray(); ApostropheEnd_C2_LetterPositions_BloomPrefix_Func_Bloom(isWord); } catch (Exception ex) { Console.WriteLine(ex); } }
public SolutionCreator(string dir, SubstCalc substCalc) { this.dir = dir; this.substCalc = substCalc; }