Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Нахождение номера столбца с максимальной серией одинаковых элементов в двумерном массиве - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не компилируется программа: значения функции Y(x), суммы S(x) и |Y(x)–S(x)| http://www.cyberforum.ru/cpp-beginners/thread663718.html
Имеется такая задача: Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры....
C++ Скругление углов у окна Ребят подскажите пожалуйста как у окна (WinAPI) скруглить углы? http://www.cyberforum.ru/cpp-beginners/thread663716.html
Что за подсказки появляются после напечатанного в коде "std" C++
Есть 3 файла #include <iostream> #ifndef move_h #define move_h namespace nm_move_ { class Move__
Написать программу для вычисления длины окружности и площади круга C++
Написать программу, получающую double r и вычисляющую: длину окружности радиуса r и площадь круга радиуса r. Вычисление числа пи производить с помощью стандартных математических функций asin,...
C++ Как узнать адрес указателя на char? http://www.cyberforum.ru/cpp-beginners/thread663692.html
Например, вот есть массив символов и указатель. И указателю присваиваем адрес этого массива. А как узнать адрес самого указателя? char animal = "bear"; char *ps = animal; Я пробовал что-то вроде...
C++ Обход графа в глубину Помогите, пожалуйста! Необходимо написать программу, которая показывала бы вершины, получаемые при обходе графа в глубину. подробнее

Показать сообщение отдельно
Andsteadur
153 / 137 / 3
Регистрация: 23.05.2009
Сообщений: 275
05.10.2012, 11:30
Цитата Сообщение от ekost Посмотреть сообщение
2. Определение номера столбца с максимальным количеством одинаковых элементов.
согласно заданию нужно подсчитать количество одинаковых элементов столбца (совсем необязательно они должны расположены рядом)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
#include <algorithm>
#include <map>
 
using namespace std;
 
bool pred(const pair<int, int>& lh, const pair<int, int>& rh)
{
   return lh.second < rh.second;
}
 
int main()
{
   const size_t szArr = 5;
   int arr[szArr][szArr] = {
      {0, 3, 6, 0, 5},
      {1, 1, 7, 0, 2},
      {1, 2, 8, 0, 4},
      {2, 4, 9, 1, 5},
      {3, 5, 1, 3, 1},
   };
   
   map<int, int> counter;
   int maxDuplicates = 0;
   int columnIndex = -1;
   
   for(size_t i = 0; i < szArr; ++i)
   {
      counter.clear();
      for(size_t j = 0; j < szArr; ++j)
      {
         ++counter[arr[j][i]];
      }
      map<int, int>::iterator it = max_element(counter.begin(), counter.end(), pred);
      if (maxDuplicates < it->second)
      {
         maxDuplicates = it->second;
         columnIndex = i;
      }      
   }
   
   cout << "Column with index = " << columnIndex << " has " << maxDuplicates << " duplicates! ";
   return 0;
}
http://liveworkspace.org/code/7b73af...e8cb07713f756f

Цитата Сообщение от ekost Посмотреть сообщение
А как правильно?
C++
1
2
3
4
int main()
{ 
return 0:
}
да этот вариант удовлетворяет требованиям стандарта
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru