Предмет: Информатика, автор: hotchili

С++ Дана целочисленная матрица размером n * m. Среди строк заданной
целочисленной матрицы, содержащих только нечетные элементы, найти строку

с максимальной суммой модулей элементов. Решить без использования вектора.

Ответы

Автор ответа: stglupa
1

#include <iostream>

using namespace std;

bool check(int *a_, int m_){

   for(int i = 0; i < m_; i++)

       if(!(*(a_ + i) & 1))

           return false;

   return true;

}

int absSum(int *a_, int m_){

   int sum = 0;

   for(int i = 0; i < m_; i++)

       sum += abs(*(a_ + i));

   return sum;

}

void solve(){

   int n, m;

   cin >> n >> m;

   int a[n][m];

   for(int i = 0; i < n; i++)

       for(int j = 0; j < m; j++)

           cin >> a[i][j];

   pair<int, int> res = {-1, -1};

   for(int i = 0; i < n; i++)

       if(check(a[i], m) && absSum(a[i], m) > res.second)

           res = {i, absSum(a[i], m)};

   if(res.first < 0)

       cout << "There are no suitable lines in the given array";

   else

       cout << (res.first + 1);

}

int main(){

   solve();

}

Похожие вопросы
Предмет: Қазақ тiлi, автор: работа17
Предмет: История, автор: sofalove5
Предмет: Алгебра, автор: vasilkina0950