Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- std::vector<int> SlowSolution(const int& number_of_lists, const int& lists_length, const VectorData& data) {
- std::vector<int> result;
- result.reserve(number_of_lists * lists_length);
- for (const auto& list: data) {
- for (const auto& element: list)
- result.push_back(element);
- }
- std::sort(result.begin(), result.end());
- return result;
- }
- void StressTests() {
- int number_of_iterations = 100;
- for (int it = 0; it < number_of_iterations; ++it) {
- int number_of_lists = rand() % 100 + 1;
- int list_size = rand() % 1000 + 1;
- std::vector<std::vector<int>> data(number_of_lists);
- for (size_t index = 0; index < number_of_lists; ++index) {
- std::vector<int> result;
- result.reserve(list_size);
- for (int index = 0; index < list_size; ++index) {
- result.push_back(rand() % 1000);
- }
- std::sort(result.begin(), result.end());
- data[index] = result;
- }
- std::vector<int> okResult = SlowSolution(number_of_lists, list_size, data);
- std::vector<int> myResult = SolutionWithHeap(number_of_lists, list_size, data);
- if (okResult != myResult) {
- std::cout << "number_of_lists = " << number_of_lists << ", list_size = " << list_size << "\nOk result: ";
- for (const auto &element: okResult) {
- std::cout << element << " ";
- }
- std::cout << "\nMy result: ";
- for (const auto &element: myResult) {
- std::cout << element << " ";
- }
- std::cout << "\n";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement