using System;
using System.Linq;
using System.Collections.Generic;
class Program
{
static void Main()
{
int L = 5; // Примерное значение L
List<string> A = new List<string> { "123A", "456B", "789C", "ABCDE", "LONGSTRING", "XYZ", "AAZ" };
var result = A.TakeWhile(s => s.Length <= L) // Берем строки до первой, длина которой > L
.Where(s => char.IsLetter(s.Last())) // Оставляем только те, что оканчиваются буквой
.OrderByDescending(s => s.Length) // Сортируем по убыванию длины
.ThenBy(s => s) // Одинаковой длины — по возрастанию
.ToList();
Console.WriteLine(string.Join(", ", result));
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uTGlucTsKdXNpbmcgU3lzdGVtLkNvbGxlY3Rpb25zLkdlbmVyaWM7CgpjbGFzcyBQcm9ncmFtCnsKICAgIHN0YXRpYyB2b2lkIE1haW4oKQogICAgewogICAgICAgIGludCBMID0gNTsgLy8g0J/RgNC40LzQtdGA0L3QvtC1INC30L3QsNGH0LXQvdC40LUgTAogICAgICAgIExpc3Q8c3RyaW5nPiBBID0gbmV3IExpc3Q8c3RyaW5nPiB7ICIxMjNBIiwgIjQ1NkIiLCAiNzg5QyIsICJBQkNERSIsICJMT05HU1RSSU5HIiwgIlhZWiIsICJBQVoiIH07CiAgICAgICAgCiAgICAgICAgdmFyIHJlc3VsdCA9IEEuVGFrZVdoaWxlKHMgPT4gcy5MZW5ndGggPD0gTCkgLy8g0JHQtdGA0LXQvCDRgdGC0YDQvtC60Lgg0LTQviDQv9C10YDQstC+0LksINC00LvQuNC90LAg0LrQvtGC0L7RgNC+0LkgPiBMCiAgICAgICAgICAgICAgICAgICAgICAuV2hlcmUocyA9PiBjaGFyLklzTGV0dGVyKHMuTGFzdCgpKSkgLy8g0J7RgdGC0LDQstC70Y/QtdC8INGC0L7Qu9GM0LrQviDRgtC1LCDRh9GC0L4g0L7QutCw0L3Rh9C40LLQsNGO0YLRgdGPINCx0YPQutCy0L7QuQogICAgICAgICAgICAgICAgICAgICAgLk9yZGVyQnlEZXNjZW5kaW5nKHMgPT4gcy5MZW5ndGgpIC8vINCh0L7RgNGC0LjRgNGD0LXQvCDQv9C+INGD0LHRi9Cy0LDQvdC40Y4g0LTQu9C40L3RiwogICAgICAgICAgICAgICAgICAgICAgLlRoZW5CeShzID0+IHMpIC8vINCe0LTQuNC90LDQutC+0LLQvtC5INC00LvQuNC90Ysg4oCUINC/0L4g0LLQvtC30YDQsNGB0YLQsNC90LjRjgogICAgICAgICAgICAgICAgICAgICAgLlRvTGlzdCgpOwogICAgICAgIAogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKHN0cmluZy5Kb2luKCIsICIsIHJlc3VsdCkpOwogICAgfQp9