ПРОГРАММИРОВАНИЕ НА С++ в одномерном массиве – сортировка элементов последовательности, расположенных после второго отрицательного числа, в порядке убывания.
#include <iostream>
using namespace std;
int main()
{
int arr[] = {5, 7, -2, 4, -3, 10, 8, -1, 6};
int len = sizeof(arr) / sizeof(arr[0]);
int count = 0;
int second_neg_idx = -1;
for (int i = 0; i < len; i++) {
if (arr[i] < 0) {
count++;
if (count == 2) {
second_neg_idx = i;
break;
}
}
}
if (second_neg_idx != -1 && second_neg_idx < len) {
for (int i = second_neg_idx + 1; i < len; i++) {
for (int j = i + 1; j < len; j++) {
if (arr[j] > arr[i]) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
for (int i = 0; i < len; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
Этот код находит в массиве два отрицательных числа, сохраняет индекс второго отрицательного числа и сортирует все элементы, которые находятся после второго отрицательного числа, в порядке убывания. Затем он выводит отсортированный массив на экран.
Эффективность этого кода может быть улучшена путем оптимизации алгоритма сортировки или использования более эффективного алгоритма, если объем входных данных будет значительно увеличен.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет