Pascal ABC 17 балловНапишите программу, которая сортирует массив целых чисел и определяет количество различных значений в нём. Входные данные Первая строка содержит размер массива N . Во второй строке через пробел задаются N ...
Pascal ABC 17 баллов
Напишите программу, которая сортирует массив целых чисел и определяет количество различных значений в нём.
Входные данные
Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 10000 .
Выходные данные
Программа должна вывести в первой строке элементы массива, отсортированного в порядке возрастания, а во второй строке – количество различных чисел в массиве.
Примеры
входные данные
6
6 2 1 3 6 2
выходные данные
1 2 2 3 6 6
4
Ответ(ы) на вопрос:
Гость
var
a: array [1..10000] of integer;
i,j,k,m,n:integer;
begin
read(n);
for i := 1 to n do
read(a[i]);
for i := 1 to n-1 do
begin
m := a[i];
k := i;
for j := i+1 to n do
if a[j] < m then
begin
m := a[j];
k := j
end;
if i <> k then
begin
a[k] := a[i];
a[i] := m;
end;
end;
for i := 1 to n do
write(a[i],' ');
writeln;
k := 1;
for i := 2 to n do
if a[i] <> a[i-1] then
k := k + 1;
writeln(k)
end.
Не нашли ответ?
Похожие вопросы