Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/88: Рейтинг темы: голосов - 88, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 17
1

Определить, сколько в списке встречается различных чисел

14.08.2015, 19:26. Показов 16478. Ответов 13
Метки нет (Все метки)

Дан список чисел, который может содержать до 100000 чисел. Определите, сколько в нем встречается различных чисел. Помогите, пожалуйста, решить задачу.
Вот наброски кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <set>
#include <fstream>
using namespace std;
 
int main()
{
    set<int> s1,s2;
    ifstream input;
    input.open("input.txt");
    int d;
    while (input >> d)
    {
        if (s1.count(d)) s2.insert(d);
        s1.insert(d);
    }
    system("pause");
    input.close();
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2015, 19:26
Ответы с готовыми решениями:

Определить, сколько в списке встречается различных чисел (используя map)
Помогите пожалуйста. Задание 1 Дан список целых чисел, который может содержать до 100000 чисел....

Определить, сколько в списке различных элементов
Дан список, упорядоченный по неубыванию элементов в нем. Определите, сколько в нем различных...

Множества: дано N натуральных чисел. Сколько различных цифр встречается в его десятичной записи?
Помогите написать порограу на с++ с множиствами. Дано N натуральных чисел.Для каждого введёного...

Определить, сколько различных чисел содержит целочисленный массив
Определить, сколько различных чисел содержит целочисленный массив X(n). Например, в массиве (5, 8,...

13
494 / 376 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
15.08.2015, 02:09 2
Думаю нужно сделать отсортированный список. и использовать "двоичный поиск" что бы занести туда новый элемент. Ну а в конце размер списка и будет ответом.
1
Модератор
Эксперт по электронике
8572 / 6387 / 860
Регистрация: 14.02.2011
Сообщений: 22,219
15.08.2015, 02:31 3
Цитата Сообщение от Петров Посмотреть сообщение
Дан список чисел, который может содержать до 100000 чисел.
диапазон чисел?
минимальное? максимальное?
0
4772 / 2233 / 283
Регистрация: 01.03.2013
Сообщений: 5,874
Записей в блоге: 25
15.08.2015, 10:23 4
Все правильно в заголовке сказано - надо преобразовать исходный список/массив в множество (мап/сет или что там бывает еще) стандартной или самописной функцией и взять размер этого множества.
1
117 / 121 / 42
Регистрация: 25.08.2012
Сообщений: 1,294
15.08.2015, 10:37 5
Петров, читайте файл, добавляйте все элементы в set, потом возьмите размер set'a. В set ключи хранятся в единственном экземпляре.
1
7158 / 6133 / 2801
Регистрация: 14.04.2014
Сообщений: 26,455
15.08.2015, 10:37 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <set>
#include <fstream>
 
using namespace std;
 
int main()
{
    set<int> s1;
    ifstream input("input.txt");
    int d;
 
    while (input >> d) s1.insert(d);
 
    cout << s1.size() << endl;
 
    system("pause");
    return 0;
}
1
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 17
15.08.2015, 15:21  [ТС] 7
Спасибо большое!
0
9 / 9 / 2
Регистрация: 03.04.2016
Сообщений: 90
06.04.2016, 21:40 8
nmcf, подскажите пожалуйста, что в коде поменять надо, чтобы вводить можно было строки.

Входные данные
Вводится число N - количество элементов списка, а затем N чисел.

Выходные данные
Выведите ответ на задачу.

Sample Input:
5
1 2 3 2 1
Sample Output: 3
0
7158 / 6133 / 2801
Регистрация: 14.04.2014
Сообщений: 26,455
06.04.2016, 22:09 9
Так строки или числа?
0
9 / 9 / 2
Регистрация: 03.04.2016
Сообщений: 90
07.04.2016, 14:14 10
Цитата Сообщение от nmcf Посмотреть сообщение
Так строки или числа?
Числа в строки

Дан список целых чисел, который может содержать до 100000 чисел. Определите, сколько в нем встречается различных чисел.
Входные данные
Вводится число N - количество элементов списка, а затем N чисел.
Выходные данные
Выведите ответ на задачу.
Sample Input:
5
1 2 3 2 1
Sample Output:
3

Это неправильно?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <set>
#include <fstream>
using namespace std;
 
int main()
{
    set<int> s1,s2;
    ifstream input;
    cin>> input;
    int d;
    while (input >> d)
    {
        if (s1.count(d)) s2.insert(d);
        s1.insert(d);
    }
    system("pause");
    input.close();
    return 0;
}
0
7158 / 6133 / 2801
Регистрация: 14.04.2014
Сообщений: 26,455
07.04.2016, 14:48 11
Правильно в шестом сообщении, только нужно считать количество отдельно перед циклом.
И это вариант для файла. У тебя откуда вводится?
0
9 / 9 / 2
Регистрация: 03.04.2016
Сообщений: 90
07.04.2016, 16:41 12
Вводятся числа с клавы.

Добавлено через 31 минуту
nmcf, что здесь неправильно считает?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <set>
using namespace std;
int main()
{
    set<int> s1;
    int d;
    while ( cin>> d)
    {
        if (s1.count(d));
        s1.insert(d);
    }
    cout << s1.size();
    return 0;
}
Sample Input:
5
1 2 3 2 1
Sample Output:
3

Выводит ответ 4.
0
7158 / 6133 / 2801
Регистрация: 14.04.2014
Сообщений: 26,455
07.04.2016, 17:16 13
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <set>
 
using namespace std;
 
int main()
{
    set<int> s1;
    int d, cnt;
 
    cin >> cnt;
 
    while (cnt > 0 && cin >> d)
    {
        s1.insert(d);
        --cnt;
    }
 
    cout << s1.size();
    return 0;
}
1
9 / 9 / 2
Регистрация: 03.04.2016
Сообщений: 90
07.04.2016, 17:50 14
nmcf, +Спасибо. Все Ок!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.04.2016, 17:50

В массиве целых чисел определить, сколько раз в нем встречается элемент со значением X
7. В массиве целых чисел определить, сколько раз в нем встречается элемент со значением X. ...

Сколько различных символов встречается в строке
которая для заданной строки s определяет, сколько различных символов встречается в строке.

Подсчитать, сколько различных символов встречается в строке
пожалуйста!!! помогите!!! совершенно не знаю как решить это задание дана строка. подсчитать,...

Сколько различных цифр встречается в десятичной записи числа?
Дано натуральное число n. Сколько различных цифр встречается в его десятичной записи?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru