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

написать программу на C++
Дана матрицы из 3 строк и 7 столбцов. Рассматривая содержание каждого элемента столбца как длину стороны треугольника, отпечатать номера столбцов, которыми заданы равнобедренные треугольники, и число таких столбцов.

Ответы

Автор ответа: Аноним
0

#include <iostream>

#include <vector>

using namespace std;

bool ok1(int a, int b, int c){

   return (a+b > c && a+c > b && b+c > a) && min(a,min(b,c)) > 0;

}

bool ok2(int a, int b, int c){

   return ok1(a,b,c) && (a == b || a == c || b == c);

}

signed main(){

   const int n = 3, m = 7;

   int arr[n][m];

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

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

           cin >> arr[i][j];

   vector<int> ans;

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

       if(ok2(arr[0][j],arr[1][j],arr[2][j]))

           ans.push_back(j+1);

   cout << ans.size() << "\n";

   for(auto i: ans)

       cout << i << " ";

}

Похожие вопросы