Logo
TGCATALOG
Catalog Collections Blog
C/C++ LeetCode - задачи

C/C++ LeetCode - задачи

LeetCode задачи C/C++.

No ratings
54
10.09.2026
54
10.09.2026
No ratings
54
10.09.2026
Safe redirect via bot
О канале

LeetCode задачи C/C++.

Подписчиков 3,234
Тематика Technology
Язык English
Ссылка t.me/easy_c_plus_task

We also recommend

Kekaton AI | Voiceover and voice clone
Kekaton AI | Voiceover and voice clone
Bot

AI bot for text-to-speech and voice cloning in Telegram. Create audio using neural network quickly and easily.

Description

Решения и задачи LeetCode на C/C++.

Latest posts

C/C++ LeetCode - задачи
C/C++ LeetCode - задачи
🔒Открыть пост
и посмотреть медиа
Задача: 1199. Minimum Time to Build Blocks Сложность: hard Вам дан список блоков, где blocks[i] = t означает, что на строительство i-го блока требуется t единиц времени. Блок может быть построен только одним рабочим. Рабочий может либо разделиться на двух рабочих (количество рабочих увеличивается на одного), либо построить блок и уйти домой. Оба решения требуют некоторого времени. Время, затраченное на разделение одного рабочего на двух, задано целым числом split. Обратите внимание, что если два рабочих разделяются одновременно, они разделяются параллельно, поэтому затраты времени будут равны split. Выведите минимальное время, необходимое для строительства всех блоков. Изначально есть только один рабочий. Пример: Input: blocks = [1,2,3], split = 1 Output: 4 Explanation: Split 1 worker into 2, then assign the first worker to the last block and split the second worker into 2. Then, use the two unassigned workers to build the first two blocks. The cost is 1 + max(3, 1 + max(1, 2)) = 4. 👨💻 Алгоритм: 1⃣Подготовка кучи строительного времени: Инициализируйте кучу строительного времени, изначально содержащую все значения времени из массива blocks. 2⃣Обработка кучи: Пока в куче больше одного элемента: - извлеките минимальное значение из кучи, обозначим его как x. - извлеките следующее минимальное значение из кучи, обозначим его как y. - создайте новое время строительства, которое равно split + y, и вставьте его обратно в кучу. 3⃣Возврат результата: Когда в куче останется только одно значение, оно и будет минимальным временем, необходимым для строительства всех блоков. 😎 Решение: #include #include class Solution { public: int minBuildTime(std::vector& blocks, int split) { std::priority_queue pq(blocks.begin(), blocks.end()); while (pq.size() > 1) { int x = pq.top(); pq.pop(); int y = pq.top(); pq.pop(); pq.push(split + y); } return pq.top(); } }; Ставь 👍 и забирай 📚 Базу знаний
C/C++ LeetCode - задачи
Subscriber dynamics
+0.0% last 30 days
Current
3,234
Month ago
3,234
Average growth
+0 / day
Updated
11 hours ago

Reviews for channel C/C++ LeetCode - задачи

Log in to leave a review

Only registered users can share their opinion.

No reviews yet

Be the first to share your impression of this resource!

Similar resources

40

UpdatesOxygenOSforOnePlus: stable and beta versions, changelog, instructions.

Channel
Java | Remote

Java | Remote

Technology
7

Remote vacancies for Java developers. Fresh offers from employers.

Channel

Science and Technology Channel. Facts, innovations and a vision of the future without politics and religion. Perfect for lovers of progress.

Channel
Switch to Light Theme
Home Catalog Collections Blog Login