помогите пожалуйста cоставить условие к этой программе
Задана матрица целых чисел выполнить сортировку элементов в той строке матрицы сумма элементов в которой максимальна
#include <iostream>
#include <string>
#include <math.h>
using namespace std;
int main()
{
int a1[20][20], i, j, n, m;
//Вводим количество строк матрицы
cout << "n = " ;
cin >> n;
//Вводим количество столбцов матрицы
cout << "m = " ;
cin >> m;
//Заполняем матрицу с клавиатуры
for (i = 0; i < n; i = i +1)
{
for (j = 0; j < m; j = j +1)
{
cout << "[" << i+1 << ";" << j+1 << "] = " ;
cin >> a1[i][j];
}
}
```Конкретно не понимаю как соединить сортировку и сумму элементов в код
Ответы (1 шт):
Автор решения: Вадим Александру
→ Ссылка
Находим максимальную сумму элементов
int max = a1[0][0];
for (i = 0; i < n; i++) {
int sum = 0;
for (j = 0; j < m; j++) {
sum += a1[i][j];
}
if(sum > max) {
max = sum;
}
}
Сортируем все строчки у которых сумма элементов равно максимальной
for (i = 0; i < n; i++) {
int sum = 0;
for (j = 0; j < m; j++) {
sum += a1[i][j];
}
if(sum == max) {
sort(a1[i],a1[i] + sizeof(a1[i]) / sizeof(a1[i][0]));
}
}
P.s Чтобы sort работал нужно вначале программы добавить строчку
#include <bits/stdc++.h>
P.s.s Вывод матрицы на экран думаю сделаете сами.