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

Массив: Удалить все повторяющиеся элементы, оставив в массиве только один. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как вычислить, было ли нажатие пробела? http://www.cyberforum.ru/cpp-beginners/thread809567.html
Как вычислить, было ли нажатие пробела при использовании объекта cin? Например, читаю строку, ввожу с пробелами, а в файле, в котором записывается строка все без пробелов. А нужно, чтобы было с...
C++ Рандом без повторений Здравствуйте! Искал по форуме, но так и не нашел подходящее решение такой задачи: пользователь вводит К ПРИМЕРУ число 7. я беру от него логарифм за основанием 2 и заокругляю к большему... http://www.cyberforum.ru/cpp-beginners/thread809547.html
C++ Через аргументы командной строки скопировать файл в файл
Объясните, пожалуйста, как через аргументы командной строки скопировать файл в файл?
C++ Командная строка
Почему при запуске скомпилированой программы, вместо русских букв у меня какая то ересь?
C++ таблица http://www.cyberforum.ru/cpp-beginners/thread809533.html
кто может помочь с таблицей??? Ниже приведена таблица, строки которой соответствуют различным функциям f(n), а столбцы - значениям времени t. Определите максимальные значения n, для которых задача...
C++ Рыбалка на С++. (Новичкам от новичка) Вспоминал давно забытый С++, решил написать маленькую программку. (Распаковать в отдельную папку). Также хочу поделиться исходным кодом. Может кому то будет интересно рассмотреть, может чему... подробнее

Показать сообщение отдельно
eocron
Кактус
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
15.03.2013, 22:06
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 <map>
 
using namespace std;
 
template<typename T>
void show(T *array,int size)
{
     typedef typename std::map<T,int> TMap;
     typedef typename TMap::iterator iterator;
     TMap res;
     T buf;
     //calculating appearence for each elemnt
     for(int i=0;i<size;i++)
     {
             res[ array[i] ]++;
             //parallel find second multi-appearence
             if(res[array[i]]>1)
             {
                     //delete array[i];
                     array[i]=-1; //umm..-1..or...0....or whatever means delete to you
             }
     }
     
     //print all shit out
     for(iterator it=res.begin(); it!=res.end(); ++it)
     {
             cout << it->first << '\t' << ((double)it->second/(double)size)*100 <<'%'<< '\n';
     }
}
 
int main()
{
    int t[10000];
    for(int i=0;i<10000;i++)
    {
            t[i]=rand()%10;
    }
 
    show(t,10000);
    
    system("pause");
    
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru