fork download
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4.  
  5. class Program
  6. {
  7. static void Main()
  8. {
  9. int L = 5; // Примерное значение L
  10. List<string> A = new List<string> { "123A", "456B", "789C", "ABCDE", "LONGSTRING", "XYZ", "AAZ" };
  11.  
  12. var result = A.TakeWhile(s => s.Length <= L) // Берем строки до первой, длина которой > L
  13. .Where(s => char.IsLetter(s.Last())) // Оставляем только те, что оканчиваются буквой
  14. .OrderByDescending(s => s.Length) // Сортируем по убыванию длины
  15. .ThenBy(s => s) // Одинаковой длины — по возрастанию
  16. .ToList();
  17.  
  18. Console.WriteLine(string.Join(", ", result));
  19. }
  20. }
Success #stdin #stdout 0.05s 29472KB
stdin
Standard input is empty
stdout
ABCDE, 123A, 456B, 789C