Ниже ответы на ряд возникших вопросов по задаче 1:
1. По пункту 2. Так как в моем задании указан тип чисел float, то при поиске число в контейнере нужно использовать условие типа fabs(a - b) < 0.001 ? Или просто проверить на эквивалентность?
- Нужно проверять на точное совпадение.
2. По пункту 3. Правильно ли я понял, что числа нужно добавлять в список таким образом, чтобы они в любой момент времени были отсортированы? Или же нужно просто отсортировать список после заполнения?
- В любой момент времени элементы должны быть отсортированы. Сортировку использовать нельзя.
3. "Запустите программу для N=[1,10,100,1000,10000,100000]" - то есть программу нужно запускать из терминала, передавая значение N в качестве параметра?
- Если N будет передаваться через аргументы командной строки, то это будет олично. Будет допустимо пересобирать программу для каждого N.
4. В гугл-форме в пункте "Сколько раз сгенерированное число было найдено в контейнере при N=10" нужно написать количество нахождений последнего (т.е. в данном случае десятого) сгенерировано числа? И если да, нужно ли выводить все остальные результаты?
- Нет. В этом пункте (и аналогичных) нужно указать сколько раз сгенерированное число из пункта 1 было найдено в контейнере при выполнении шага 2. Например, если при N=10 будут всегда генерироваться одинаковые числа на шаге 1, то ответ будет 9.
1)Требуется подсчитать сколько раз сгенерированное число было найдено в контейнере set (шаг алгоритма 2). set - это контейнер уникальных элементов, упорядоченных по возрастанию. Каждое его значение также является и ключом. То есть в нем не может быть двух одинаковых элементов. Значит для любого числа ответ на этот вопрос будет 0 или 1. То ли Вы требуете в данном задании?
2)Требуется ли выводить ответ на 1 вопрос для каждого сгенерированного числа? Но даже простой вывод всех элементов множества затягивается очень на долго для N=100000.
Прошу привести пример, что именно должна выводить программа(можно даже простой пример с числами int и N=10, генерируемые числа должны и повторяться, и быть различными: 1 5 4 4 6 5 5 8 3 7).
Несколько вопросов:
- В хеш ф-ии учитывать все элементы кортежа (структуры)?
- Элемент string состоит из одного слова или нескольких? есть ли ограничение?
- Как правильно работать с генератором строк? Сгенерировать текст, добавить его в файл, и доставать случайные слова?
Или взять классический текст Lorem Ipsum? можно ли хранить его как переменную string?
В хеш ф-ии учитывать все элементы кортежа (структуры)?
Элемент string состоит из одного слова или нескольких? есть ли ограничение?
Как правильно работать с генератором строк? Сгенерировать текст, добавить его в файл, и доставать случайные слова? Или взять классический текст Lorem Ipsum? можно ли хранить его как переменную string?
Можно ли написать свой собственный генератор случайных слов/строк используя латинский алфавит? Или обязательно использовать текст "Lorem ipsum"?
Как я понял, unordered_map хранит пары ключ-значение с уникальными ключами. Соответственно в таком контейнере не может быть данных с одинаковыми ключами. Если хеш-функция выдает занятый ключ для очередных данных, то нужно ли их размещать, пересчитав каким-то образом ключ для них? Или можно просто учесть, что было совпадение по ключу?
Как известно, контейнер map (unordered_map) содержит в себе ключ и значение. В данном случае в качестве ключа выступает структура Film, в то время как значением выступает высчитанный хеш. В дальнейшем поиск по хеш-таблице(максимальное количество элементов с одинаковым значением хеш-функции) будет сравниваться именно по значению, то есть - по хешу.
template<class T>
void printStat(T ptr) {
std::cout << ptr.get() << " -> " << ptr.use_count() << std::endl;
}
Можно просто подружить все классы? или нужно реализовывать схему наследования?
The requested document, out.csv (0x284c7394aad1d part 0.2), could not be found: DOCID_NOT_FOUND