Напишите программу, которая сортирует отдельно элементы массива с чётными и нечётными значениями. Все элементы с нечётными значениями нужно отсортировать по возрастанию, а элементы с чётными значениями – по убыванию. При этом элементы каждой из групп (как чётные, так и нечётные) должны занимать то же множество позиций в массиве, что и до сортировки. Входные данные Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 100000 . Выходные данные Программа должна вывести все элементы отсортированного массива в одну строку, разделив их пробелами.
//Весьма слабое решение, но после перерыва мне простительно, хех.//Pascal ABC.NET v3.1 сборка 1219Var ar,arOdd,arNotOdd:array of integer; n,i,j,k1,k2:integer;begin readln(n); setlength(ar,n+1); k1:=1; k2:=1; for i:=1 to n do begin readln(ar[i]); if odd(i) then begin setlength(arOdd,k1); arOdd[k1-1]:=ar[i]; inc(k1); end else begin setlength(arNotOdd,k2); arNotOdd[k2-1]:=ar[i]; inc(k2); end; end; sort(arOdd); sort(arNotOdd); reverse(arNotOdd); k1:=0; k2:=0; i:=0; while i<>n do begin inc(i); if odd(i) then begin ar[i]:=arOdd[k1]; inc(k1); end else begin ar[i]:=arNotOdd[k2]; inc(k2); end; write(ar[i],); end;end.Пример ввода:512345Пример вывода:1 4 3 2 5
⭐⭐⭐⭐⭐ Лучший ответ на вопрос «Напишите программу, которая сортирует отдельно элементы массива с чётными и нечётными значениями. Все элементы с нечётными значениями нужно отсортировать по возрастанию, а элементы с чётными значениями – по убыванию. При этом элементы каждой из групп (как чётные, так и нечётные) должны занимать то же множество позиций в массиве, что и до сортировки. Входные данные Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 100000 . Выходные данные Программа должна вывести все элементы отсортированного массива в одну строку, разделив их пробелами.» от пользователя ДЕНЯ ЛИСЕНКО в разделе Экономика. Задавайте вопросы и делитесь своими знаниями.
Открой этот вопрос на телефоне - включи камеру и наведи на QR-код!