using System;
using System.Linq;
using System.Collections.Generic;
public class Test
{
public static void Main()
{
HashSet<string> allWords = new HashSet<string> {
"flame", "flaming", "flamingo", "funfair", "unfair"
};
var query = allWords
.Select(word => word.Substring(0, word.Length - 1))
.Concat(allWords.Select(word => word.Substring(1, word.Length - 1)))
.Where(candidate => allWords.Contains(candidate));
foreach (string word in query) {
Console.WriteLine(word);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJSGFzaFNldDxzdHJpbmc+IGFsbFdvcmRzID0gbmV3IEhhc2hTZXQ8c3RyaW5nPiB7CgkJICAgICJmbGFtZSIsICJmbGFtaW5nIiwgImZsYW1pbmdvIiwgImZ1bmZhaXIiLCAidW5mYWlyIgoJCX07CgkJCgkJdmFyIHF1ZXJ5ID0gYWxsV29yZHMKCQkgICAgLlNlbGVjdCh3b3JkID0+IHdvcmQuU3Vic3RyaW5nKDAsIHdvcmQuTGVuZ3RoIC0gMSkpCgkJICAgIC5Db25jYXQoYWxsV29yZHMuU2VsZWN0KHdvcmQgPT4gd29yZC5TdWJzdHJpbmcoMSwgd29yZC5MZW5ndGggLSAxKSkpCgkJICAgIC5XaGVyZShjYW5kaWRhdGUgPT4gYWxsV29yZHMuQ29udGFpbnMoY2FuZGlkYXRlKSk7CgkJICAgCgkJZm9yZWFjaCAoc3RyaW5nIHdvcmQgaW4gcXVlcnkpIHsKCQkJQ29uc29sZS5Xcml0ZUxpbmUod29yZCk7CgkJfQoJfQp9