#nullable enable var c = 26; var ans = new List(); for (var i = 0; i < c - 1; i++) { var c1 = (char)(i + 'A'); ans.Add(new string([c1, c1])); for (var j = i + 1; j < c - 1; j++) { var c2 = (char)(j + 'A'); ans.Add(new string([c1, c2])); ans.Add(new string([c2, c1])); } ans.Add(new string([c1, 'Z'])); var cn = (char)((i + 1) % (c - 1) + 'A'); ans.Add(new string(['Z', cn])); } Console.WriteLine(string.Join(Environment.NewLine, ans));