Библиотека задач по C++ | тесты, код, задания
5.02K subscribers
849 photos
5 videos
236 links
Задачи и тесты по C++ для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/7a480301

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🧩 Задача на выходные: оптимизируй код

Код работает, но выглядит... не очень. С++20 даёт нам крутые инструменты для упрощения.

#include <vector>
#include <algorithm>
#include <iostream>

std::vector<int> filterAndTransform(const std::vector<int>& input) {
std::vector<int> filtered;
for (const auto& val : input) {
if (val % 2 == 0) {
filtered.push_back(val);
}
}

std::vector<int> result;
for (const auto& val : filtered) {
result.push_back(val * val);
}

return result;
}


Задача: Перепиши эту функцию используя ranges (C++20).

Бонус: Можно ли избежать промежуточных копирований?

✏️ Покажи свою версию в комментариях.


📍Навигация: ВакансииЗадачиСобесы

Библиотека C/C++ разработчика

#междусобойчик
Какова временная сложность этой функции для сбалансированного дерева?
Anonymous Quiz
6%
O(1)
51%
O(log n)
22%
O(n)
17%
O(n log n)
4%
O(n²)