Дан двумерный массив целых чисел размером M*N . найти количество столбцов данного...

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

Дан двумерный массив целых чисел размером M*N . найти количество столбцов данного массива, все элементы которых различны


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

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество колонок в массиве:');
  Writeln('*** Исходный массив [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-9,9);
  a.Println(3); Writeln(3*a.ColCount*'-');
  Write('Колонок, где все элементы различны, ',
      a.Cols.Where(c->c.Distinct.Count=m).Count);
end.

Пример
Количество строк в массиве: 6
Количество колонок в массиве: 7
*** Исходный массив [6,7] ***
 -9  6 -1  5  1 -9 -6
 -2  9  1 -7 -6 -5 -1
  4 -7  2  1  3  1  2
  0  3  8  5 -6  8 -9
 -2 -2  8 -4 -7  0  8
 -2  1  1 -8 -9  1 -4
---------------------
Колонок, где все элементы различны, 2
(150k баллов)