Logo
TGCATALOG
Catálogo Selecciones Blog
C/C++ LeetCode - задачи

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

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

Sin valoraciones
51
10.09.2026
51
10.09.2026
Sin valoraciones
51
10.09.2026
Redirección segura vía bot
О канале

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

Подписчиков 3,234
Тематика Tecnología
Язык Español
Ссылка t.me/easy_c_plus_task

También te recomendamos

Kekaton AI  Voz en off y clon de voz
Kekaton AI Voz en off y clon de voz
Bot

bot de IA para clonar texto a voz y voz en Telegram. Cree audio utilizando la red neuronal de forma rápida y fácil.

Descripción

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

Últimas publicaciones

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 - задачи
Evolución de suscriptores
+0.0% últimos 30 días
Actuales
3,234
Hace un mes
3,234
Crecimiento medio
+0 / día
Actualizado
hace 11 horas

Reseñas de canal C/C++ LeetCode - задачи

Inicia sesión para dejar una reseña

Solo los usuarios registrados pueden compartir su opinión.

Aún no hay reseñas

¡Sé el primero en compartir tu experiencia con este recurso!

Recursos similares

KK- videos de baile

KK- videos de baile

Tecnología
26

Vídeos de danza brillante, coreografía y tendencias. Contenido diario para amantes del movimiento y el ritmo.

Canal

Techno-blog: soluciones para navegadores, ajustes, actualizaciones, anexos agrietados.

Canal
Internet ilimitado

Internet ilimitado

Tecnología
30

UnlimitedDataZone22 ofrece acceso ilimitado a Internet. Configuraciones, archivos y consejos para una conexión estable.

Canal
Cambiar a tema claro
Inicio Catálogo Selecciones Blog Entrar