fa
Feedback
Библиотека задач по C++ | тесты, код, задания

Библиотека задач по C++ | тесты, код, задания

رفتن به کانال در Telegram

Задачи и тесты по C++ для тренировки и обучения. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/7a480301 Для обратной связи: @proglibrary_feeedback_bot

نمایش بیشتر
5 708
مشترکین
-9324 ساعت
-6 8247 روز
-14 23630 روز
آرشیو پست ها
📋 Задача Простые числа Создайте функцию, которая находит количество простых чисел до заданного целого числа 📚 Подход к решениюРешето Эратосфена на Си How Many «Prime Numbers» Are There? (edabit)

Согласно C++ 11, спецификатор noexcept может быть применен к
Anonymous voting

📋 Задача Как найти палиндром Целое число является палиндромом, если оно читается одинаково как в прямом, так и в обратном направлении. Например, 121 является палиндромом, а 123 — нет 🔍 Условие • Вернуть true, если x является палиндром и false в противном случае 📚 Подход к решению • Чтобы понять палиндром это или нет необходимо развернуть число • Это можно сделать с помощь деления на 10 • При целочисленном делении у нас остаётся число на одну цифру меньше (справа) и в остатке как раз эта цифра • Цифру из остатка сохраняем • После того как не осталось цифр в числе собираем новую из остатков (тех цифр которые сохранили Palindrome Number (leetcode) #junior #algorithms #tasks 💡Решение class Solution { public: bool isPalindrome(int x) { if (x < 0) { return false; } long long reversed = 0; long long temp = x; while (temp != 0) { int digit = temp % 10; reversed = reversed * 10 + digit; temp /= 10; } return (reversed == x); } };

📋 Windowing method (Метод скользящего окна) Метод скользящего окна — это подход к решению популярного типа алгоритмических з
📋 Windowing method (Метод скользящего окна) Метод скользящего окна — это подход к решению популярного типа алгоритмических задач 🔍 Принцип работы • Определите размер окна (количество элементов данных в окне) • Передвигайте окно по последовательности данных • Вычисляйте интересующие вас значение

👩‍💻 Что должен знать востребованный разработчик на С++? Расскажет Александр Ключев — ведущий программист в «Новые облачные
👩‍💻 Что должен знать востребованный разработчик на С++? Расскажет Александр Ключев — ведущий программист в «Новые облачные технологии». Приходите на бесплатный практический урок «C++20 динамическое выделение памяти во время компиляции» от OTUS. На вебинаре вы узнаете: - как работает динамическое выделение памяти на этапе компиляции в С++20; - зачем это нужно и где можно использовать. 🤝 Встречаемся 15 февраля в 20:00 мск в рамках курса «C++ Developer. Professional». Доступна рассрочка на обучение! ➡️ Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок и получить запись: https://otus.pw/pr2T/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576 Erid 2VtzqvcVnCY

Ханойская башня • Есть три башни. Цель игры состоит в том, чтобы переместить все диски на третью башню, но вы не можете поместить диск большего размера на диск меньшего размера • Необходимо создать функцию, которая принимает число дисков в качестве аргумента и возвращает минимальное количество шагов, необходимое для завершения игры Подсказки • Можно использовать библиотеку <cmath> • Можно использовать функцию возведения в степень pow Tower of Hanoi (edabit) #middle #algorithms #tasks Решение #include <cmath> int towerHanoi(int discs) { return pow(2, discs) — 1; }

Различие локальной переменной и поля класса с одинаковым именем Указатель this может быть полезен в случае, когда локальная переменная в методе имеет то же самое имя, что и поле объекта: void set(int x) { this->x = x; } Здесь в методе set мы присваиваем полю класса x значение локальной переменной this. Чтобы различить поле класса x и локальную переменную с тем же именем мы используем запись this->x при обращении к полю класса.

Задача Перемещение нулей 🔍 Условие • Необходимо перенести все нули в конец массива, не меняя порядок следования ненулевых элементов • Сделать всё надо in-place (на том же самом массиве) 📚 Подход к решению • Воспользоваться методом двух указателей. Когда один указывает на предыдущий элемент, а другой на следующий. Если предыдущий нулевой, то менять со следующим #middle #algorithms #tasks 💡Решение class Solution { public: void moveZeroes(vector& nums) { for (size_t i = 0, j = 0; i < nums.size(); ++i) { if (nums[i]) swap(nums[i], nums[j++]); } } };

Флажки компиляции Флажки компиляции — это опции или параметры, которые передаются компилятору программного кода для управлени
Флажки компиляции Флажки компиляции — это опции или параметры, которые передаются компилятору программного кода для управления процессом компиляции. Компиляторы — это программы, которые преобразуют исходный код программы, написанный на языке программирования, в машинный код или другой формат, который может быть выполнен компьютером. Флажки компиляции используются для различных целей, таких как оптимизация кода, установка целевой архитектуры, включение или выключение определенных функций и возможностей языка программирования, а также для управления процессом отладки и создания исполняемых файлов.

Поиск дубликатов Задача 217 Contains Duplicate с leetcode 🔍 Условие • Учитывая целочисленный массив nums, вернуть true, если хотя бы одно значение появляется как минимум дважды в массиве, и вернуть false, если каждый элемент уникален 📚 Подход к решению • Из-за того что уникальных элементов меньше или равно исходному размеру входного массива, то можно просто сравнить эти величины #middle #algorithms #tasks 💡Решение class Solution { public: bool containsDuplicate(vector& nums) { set testSet(nums.begin(), nums.end()); return testSet.size() < nums.size(); } };

Ключевое слово «extern» Ключевое слово «extern» используется для объявления переменных или функций, которые определены в друг
Ключевое слово «extern» Ключевое слово «extern» используется для объявления переменных или функций, которые определены в других файловых единицах (обычно в других исходных файлах или библиотеках). Это позволяет программе получать доступ к переменным или функциям, которые находятся в других местах в коде. Использование «extern» может быть полезным, когда вы хотите разделить определение переменных или функций между несколькими файлами, чтобы избежать повторного определения и обеспечить правильное связывание (линковку) программы.

Перемешивание массива Задача 1470 Shuffle the Array с leetcode 🔍 Условие Дан массив nums, состоящий из 2n элементов в виде [x1,x2,...,xn,y1,y2,...,yn]. Нужно вернуть массив в виде [x1,y1,x2,y2,...,xn,yn] 📚 Подход к решению • Из-за того что элемент x и y лежат друг от друга всегда на одинаковом расстоянии, то можно воспользоваться просто арифметической операцией сложения для поиска пары #junior #algorithms #tasks 💡Решение class Solution { public: vector shuffle(vector& nums, int n) { vector result; for (int i = 0; i < n; ++i) { result.push_back(nums[i]); result.push_back(nums[i + n]); } return result; } };

equal_range Функция equal_range используется для нахождения диапазона элементов в упорядоченном контейнере, которые имеют опр
equal_range Функция equal_range используется для нахождения диапазона элементов в упорядоченном контейнере, которые имеют определенное значение. Она возвращает пару итераторов, представляющих начало и конец диапазона, в котором находятся элементы с указанным значением. Это полезно, когда вы хотите найти все элементы с определенным значением в упорядоченном контейнере, таком как std::set или std::map. Прототип функции equal_range выглядит следующим образом: std::pair equal_range(const Key& key); Где: iterator — тип итератора контейнера. Key — значение, для которого нужно найти диапазон.

🔍 Равенство трех значений Создайте функцию, которая принимает три целочисленных аргумента (a, b, c) и возвращает количество целых чисел, которые имеют одинаковое значение 📚 Подход к решению • Предполагается использование условных конструкций (if) Equality of 3 Values #junior #algorithms #tasks 💡Решение int equal(int a, int b, int c) { int count = 0; if (a == b || a == c) count = 2; if (b == c) if (count < 2) count = 2; else count = 3; return count;} }

В докладе автор в лёгкой форме рассказывает о C++, его применение, особенностях и всё это переправлено мемами😆 Антон Соснин
В докладе автор в лёгкой форме рассказывает о C++, его применение, особенностях и всё это переправлено мемами😆 Антон Соснин — С++ в мемах #junior

Заполнение массива значениями std::fill — это функция из стандартной библиотеки algorithm, предназначенная для заполнения диа
Заполнение массива значениями std::fill — это функция из стандартной библиотеки algorithm, предназначенная для заполнения диапазона значениями одного и того же элемента

💪 Пройди тест по C++ и проверь свои знания. Ответишь — пройдешь на продвинутый курс "C++ Developer. Professional" от OTUS по специальной цене + получишь запись мастер-класса от преподавателя курса. ⛔️ ПРОЙТИ ТЕСТ: https://otus.pw/79kx/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576