Дан массив строк. Упорядочить строки массива по возрастанию количества пробелов в...

0 голосов
49 просмотров

Дан массив строк. Упорядочить строки массива по возрастанию количества пробелов в строках. В Паскаль


Информатика (145 баллов) | 49 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1436 от 01.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadlnInteger('Количество строк: ');
  var a:=new string[n];
  for var i:=0 to n-1 do a[i]:=ReadlnString;
  Writeln('*** РЕЗУЛЬТАТ ***');
  a:=a.Select(s->(s,s.ToCharArray.Where(c->c=' ').Count))
    .OrderBy(vk->vk[1]).Select(vk->vk[0]).ToArray;
  a.Println(NewLine)
end.

Пример
Количество строк:  4
Это   первая   стро  ка
А     это    вторая       строка
Это- третья
    Четвертая - последняя
*** РЕЗУЛЬТАТ ***
Это- третья
    Четвертая - последняя
Это   первая   стро  ка
А     это    вторая       строка
(150k баллов)
0

Спасибо огромное за помощь!!!