🃏 Разбор карточной задачки: от O(k²) к O(k)!
Пришло время разобрать нашу задачу про карточный турнир.
🤔 Распространённый подход: полный перебор
Самая очевидная стратегия — перебрать все возможные комбинации взятых карт. Мы можем взять:
-
-
-
- ...
- 0 карт слева,
Этот подход абсолютно корректен. Однако, если реализовывать его "в лоб", на каждом шаге пересчитывая сумму срезов, код будет выглядеть примерно так:
А можно ли быстрее? Конечно!
🚀 Эталонное решение: Скользящее окно за O(k)
Вместо того чтобы каждый раз пересчитывать сумму с нуля, мы можем вычислить её один раз, а затем "сдвигать" наш выбор, обновляя сумму за константное время
Как это работает?
1. Сначала считаем, что мы взяли первые
2. Затем в цикле
3. На каждом шаге обновляем текущую сумму и сравниваем её с максимальной.
⏳ Время:
💾 Память:
💡 Красивая альтернатива: инверсия задачи
Есть и другой, очень изящный способ взглянуть на проблему.
Задача превращается в "найти непрерывный подмассив длиной
Этот подход имеет сложность
#алгособес
Пришло время разобрать нашу задачу про карточный турнир.
🤔 Распространённый подход: полный перебор
Самая очевидная стратегия — перебрать все возможные комбинации взятых карт. Мы можем взять:
-
k
карт слева, 0 справа-
k-1
карт слева, 1 справа-
k-2
карт слева, 2 справа- ...
- 0 карт слева,
k
карт справаЭтот подход абсолютно корректен. Однако, если реализовывать его "в лоб", на каждом шаге пересчитывая сумму срезов, код будет выглядеть примерно так:
def max_score_slow(card_points, k):
max_sum = 0
n = len(card_points)
for i in range(k + 1):
# i - сколько карт берем справа
# k-i - сколько карт берем слева
left_sum = sum(card_points[:k - i])
right_sum = sum(card_points[n - i:])
max_sum = max(max_sum, left_sum + right_sum)
return max_sum
Главный минус здесь — многократный вызов sum() внутри цикла. Каждая такая операция сама по себе занимает время, пропорциональное количеству элементов. В итоге общая сложность алгоритма получается O(k²), что может быть медленно на больших данных.
А можно ли быстрее? Конечно!
🚀 Эталонное решение: Скользящее окно за O(k)
Вместо того чтобы каждый раз пересчитывать сумму с нуля, мы можем вычислить её один раз, а затем "сдвигать" наш выбор, обновляя сумму за константное время
O(1)
.Как это работает?
1. Сначала считаем, что мы взяли первые
k
карт слева. Это наша первоначальная max_sum
.2. Затем в цикле
k
раз делаем "обмен": убираем одну карту с конца левой группы и добавляем одну карту справа.3. На каждом шаге обновляем текущую сумму и сравниваем её с максимальной.
def max_score_fast(card_points, k):
n = len(card_points)
current_sum = sum(card_points[:k])
max_sum = current_sum
for i in range(1, k + 1):
# Обновляем сумму за O(1):
# отнимаем крайний левый элемент и прибавляем крайний правый
current_sum = current_sum - card_points[k - i] + card_points[n - i]
max_sum = max(max_sum, current_sum)
return max_sum
⏳ Время:
O(k)
. Один начальный подсчет суммы sum(card_points[:k])
занимает O(k)
, и цикл также выполняется k
раз с операциями за O(1)
.💾 Память:
O(1)
. Мы храним всего несколько переменных.💡 Красивая альтернатива: инверсия задачи
Есть и другой, очень изящный способ взглянуть на проблему.
Вместо того чтобы максимизировать сумму k карт, которые мы берём, давайте минимизируем сумму n-k карт в центре, которые мы оставляем на столе.
Задача превращается в "найти непрерывный подмассив длиной
n-k
с минимальной суммой". Это тоже классическая задача на скользящее окно!def max_score_inverted(card_points, k):
n = len(card_points)
window_size = n - k
total_sum = sum(card_points)
if window_size <= 0:
return total_sum
min_subarray_sum = current_sum = sum(card_points[:window_size])
for i in range(window_size, n):
current_sum += card_points[i] - card_points[i - window_size]
min_subarray_sum = min(min_subarray_sum, current_sum)
return total_sum - min_subarray_sum
Этот подход имеет сложность
O(N)
, что тоже отлично. Он особенно хорош, когда k
близко к N
.#алгособес
Telegram
PythonTalk
🐍 Алгоритмическая задачка
Представьте, что вы участвуете в карточном турнире 🃏. Перед вами на столе лежит ряд карт, каждая со своим номиналом. Правила просты, но требуют стратегического мышления.
Условие
Дан список очков card_points. За k ходов нужно набрать…
Представьте, что вы участвуете в карточном турнире 🃏. Перед вами на столе лежит ряд карт, каждая со своим номиналом. Правила просты, но требуют стратегического мышления.
Условие
Дан список очков card_points. За k ходов нужно набрать…
👍3❤1✍1🔥1🙏1
👨💻 Главный IT-навык 2025 — не AI
Пока все носятся с вайб-кодерами и AI-экспертами, которым платят много денюжек, реальность постучалась в дверь.
Тут издание Course Report провело исследование: проанализировали 12 миллионов (!!!) IT-вакансий на Indeed. И знаете, какой навык самый востребованный?
Держитесь за стулья:
➡️ Microsoft Excel:
➡️ Python:
➡️ SQL:
...
➡️ AI: жалкие
Да-да, программа, выпущенная 40 лет назад, упоминается в вакансиях почти в 8 раз чаще, чем Python. И в 21 раз чаще, чем AI.
Как сказал один из экспертов в статье: "За всем блеском чат-ботов и нейросеток стоит старый-добрый Excel. Реальные решения и реальные доллары двигаются именно там".
Так и живём.
Пока все носятся с вайб-кодерами и AI-экспертами, которым платят много денюжек, реальность постучалась в дверь.
Тут издание Course Report провело исследование: проанализировали 12 миллионов (!!!) IT-вакансий на Indeed. И знаете, какой навык самый востребованный?
Держитесь за стулья:
➡️ Microsoft Excel:
531 000
упоминаний➡️ Python:
67 000
упоминаний➡️ SQL:
60 000
упоминаний...
➡️ AI: жалкие
25 000
упоминаний.Да-да, программа, выпущенная 40 лет назад, упоминается в вакансиях почти в 8 раз чаще, чем Python. И в 21 раз чаще, чем AI.
Как сказал один из экспертов в статье: "За всем блеском чат-ботов и нейросеток стоит старый-добрый Excel. Реальные решения и реальные доллары двигаются именно там".
Так и живём.
🗿12👍8😁4🤔2😱2❤1😢1🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
🇨🇳 Tencent за последнюю пару недель выкатила в опенсорс сразу две нейросети. Одна озвучивает видео, а вторая — метит в убийцы DeepL.
Посмотрите, что делает Hunyuan Video-Foley. Берем немое видео, пишем промпт... и получаем норм такой саунд-дизайн.
Это полноценный Foley — то самое искусство создания звуковых эффектов, которым занимаются целые студии. И теперь Tencent отдает эту технологию в паблик. Можно "потрогать" самому, если у вас есть что-то вроде RTX 3090/4090.
Второй релиз — Hunyuan-MT. Это семейство моделей-переводчиков, которое, по заявлениям Tencent, уже взяло первое место на конкурсе WMT25.
Что там интересного:
1️⃣ Есть модель-"редактор" Chimera. Она не переводит сама, а берет несколько вариантов перевода и "собирает" из них лучший. Впервые такой подход в опенсорсе.
2️⃣ Можно файн-тюнить. Самое ценное для нас, разрабов. Можно дообучить модель на своей специфической лексике (юр, мед, IT-термины) и получить переводчик, который реально понимает ваш контекст.
Кому интересно залезть под капот и запустить это у себя — читайте: Разбор новых SOTA-моделей для перевода (MT) и озвучки видео (Video-Foley)◀️ ◀️
Лайтовый видеопересказ здесь◀️
#щупаем_сорцы
Посмотрите, что делает Hunyuan Video-Foley. Берем немое видео, пишем промпт... и получаем норм такой саунд-дизайн.
Это полноценный Foley — то самое искусство создания звуковых эффектов, которым занимаются целые студии. И теперь Tencent отдает эту технологию в паблик. Можно "потрогать" самому, если у вас есть что-то вроде RTX 3090/4090.
Второй релиз — Hunyuan-MT. Это семейство моделей-переводчиков, которое, по заявлениям Tencent, уже взяло первое место на конкурсе WMT25.
Что там интересного:
1️⃣ Есть модель-"редактор" Chimera. Она не переводит сама, а берет несколько вариантов перевода и "собирает" из них лучший. Впервые такой подход в опенсорсе.
2️⃣ Можно файн-тюнить. Самое ценное для нас, разрабов. Можно дообучить модель на своей специфической лексике (юр, мед, IT-термины) и получить переводчик, который реально понимает ваш контекст.
Кому интересно залезть под капот и запустить это у себя — читайте: Разбор новых SOTA-моделей для перевода (MT) и озвучки видео (Video-Foley)
Лайтовый видеопересказ здесь
#щупаем_сорцы
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2🔥2🙏1🆒1
Среда — маленькая пятница, а значит, мозг уже можно нагружать по полной. Держите задачку, которая на первый взгляд кажется простой.
Есть список положительных чисел
Цель — добиться минимально возможной разницы между самым большим и самым маленьким элементом в списке.
Правила игры:
С любым элементом списка можно сколько угодно раз проворачивать два трюка:
📉 Если число чётное — делим его на 2.
📈 Если число нечётное — умножаем на 2.
Пара примеров:
(Например, можно превратить в [2, 2, 3, 2])
(Можно получить [4, 2, 5, 5, 3])
Ну что, как решать будете?
#алгособес
Есть список положительных чисел
nums
.Цель — добиться минимально возможной разницы между самым большим и самым маленьким элементом в списке.
Правила игры:
С любым элементом списка можно сколько угодно раз проворачивать два трюка:
📉 Если число чётное — делим его на 2.
📈 Если число нечётное — умножаем на 2.
Пара примеров:
nums = [1, 2, 3, 4]
→ разница 1(Например, можно превратить в [2, 2, 3, 2])
nums = [4, 1, 5, 20, 3]
→ разница 3(Можно получить [4, 2, 5, 5, 3])
nums = [2, 10, 8]
→ разница 3Ну что, как решать будете?
#алгособес
👍3🔥3🙏1
Программист против кота! ⌨️🐈⬛
Отходишь на 5 минут за кофе, а твой пушистый засранец уже отправил начальнику в чат «жжждлоавыоаы» и закрыл без сохранения файлик, в котором ты работал весь день.
Так вот, один разработчик решил эту проблему как и положено инженеру — написал код.
Встречайте, CatLock — гениальная в своей простоте утилита на Python. Нажимаешь хоткей — и клавиатура полностью блокируется, а поверх экрана появляется полупрозрачный слой. Всё видно, но коту можно. Для разблокировки достаточно кликнуть мышкой.
Вся магия, кстати, на чистом Python с помощью библиотек
А помогать тестировать программу разрабу помогал рыжий (на фото).
Срочно нужны фото ваших котеек на клавиатуре!😺
Отходишь на 5 минут за кофе, а твой пушистый засранец уже отправил начальнику в чат «жжждлоавыоаы» и закрыл без сохранения файлик, в котором ты работал весь день.
Так вот, один разработчик решил эту проблему как и положено инженеру — написал код.
Встречайте, CatLock — гениальная в своей простоте утилита на Python. Нажимаешь хоткей — и клавиатура полностью блокируется, а поверх экрана появляется полупрозрачный слой. Всё видно, но коту можно. Для разблокировки достаточно кликнуть мышкой.
Вся магия, кстати, на чистом Python с помощью библиотек
keyboard
и tkinter
. А помогать тестировать программу разрабу помогал рыжий (на фото).
Срочно нужны фото ваших котеек на клавиатуре!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍6⚡4👌1 1
Разбор задачки: да поможет нам куча! 💪🏻
Самая большая сложность задачи — в двойственности операций. Числа могут как расти, так и убывать. А что, если заставить их двигаться только в одном направлении?
Если мы сразу преобразуем все нечётные числа в списке, умножив их на 2, мы получим новую задачу: "Есть список чисел, любое из которых можно поделить на 2, если оно чётное. Найдите минимальную разницу".
Теперь все операции ведут только к уменьшению чисел. Это меняет всё!
⚙️ Как это работает: жадный алгоритм + max-heap
Раз мы можем только уменьшать числа, то для минимизации разницы
Алгоритм получается таким:
1️⃣ Нормализация. Создаём новый набор чисел: все нечётные умножаем на 2, чётные оставляем как есть. На этом же шаге находим минимальное значение в этом наборе.
2️⃣ Max-heap. Все полученные числа кладём в max-heap. Она позволит нам получать наибольший элемент за
3️⃣ Итерации. В цикле, пока текущий максимум остаётся чётным:
- Достаём максимум из кучи.
- Вычисляем текущую разницу и обновляем наш рекорд, если она меньше.
- Делим максимум на 2 и кладём обратно в кучу.
- Не забываем обновить и общий минимум, если новое число оказалось меньше.
Когда максимум в куче становится нечётным, мы останавливаемся, так как уменьшать его больше нельзя.
Вот как эта идея выглядит в коде. Обратите внимание, как в Python эмулируется max-heap с помощью
Асимптотика:
- Время:
- Память:
Кому хочется подробнее почитать про кучи, то залетайте: Ультимативный гайд по структурам данных и алгоритмам на Python. Часть 5: деревья, BST и heapq 👈🏻
#алгособес
Самая большая сложность задачи — в двойственности операций. Числа могут как расти, так и убывать. А что, если заставить их двигаться только в одном направлении?
Ключевой трюк: любое нечётное число n можно превратить в 2n, а дальше — только уменьшать. Это значит, что для каждого числа мы можем найти его максимально возможного чётного предка.
Если мы сразу преобразуем все нечётные числа в списке, умножив их на 2, мы получим новую задачу: "Есть список чисел, любое из которых можно поделить на 2, если оно чётное. Найдите минимальную разницу".
Теперь все операции ведут только к уменьшению чисел. Это меняет всё!
⚙️ Как это работает: жадный алгоритм + max-heap
Раз мы можем только уменьшать числа, то для минимизации разницы
max - min
нам выгодно уменьшать именно max
. Этот жадный подход здесь работает идеально.Алгоритм получается таким:
1️⃣ Нормализация. Создаём новый набор чисел: все нечётные умножаем на 2, чётные оставляем как есть. На этом же шаге находим минимальное значение в этом наборе.
2️⃣ Max-heap. Все полученные числа кладём в max-heap. Она позволит нам получать наибольший элемент за
O(1)
.3️⃣ Итерации. В цикле, пока текущий максимум остаётся чётным:
- Достаём максимум из кучи.
- Вычисляем текущую разницу и обновляем наш рекорд, если она меньше.
- Делим максимум на 2 и кладём обратно в кучу.
- Не забываем обновить и общий минимум, если новое число оказалось меньше.
Когда максимум в куче становится нечётным, мы останавливаемся, так как уменьшать его больше нельзя.
Вот как эта идея выглядит в коде. Обратите внимание, как в Python эмулируется max-heap с помощью
heapq
(min-heap), сохраняя отрицательные числа.import heapq
def minimum_deviation(nums):
min_val = float('inf')
max_heap = []
# Шаг 1: Нормализация и инициализация
# Превращаем все числа в "максимальных предков"
# и сразу находим минимум
for n in set(nums):
val = n * 2 if n % 2 != 0 else n
heapq.heappush(max_heap, -val)
min_val = min(min_val, val)
min_deviation = -max_heap[0] - min_val
# Шаг 2: Итеративно уменьшаем максимум
while max_heap[0] % 2 == 0:
max_val = -heapq.heappop(max_heap)
new_val = max_val // 2
min_val = min(min_val, new_val)
heapq.heappush(max_heap, -new_val)
current_max = -max_heap[0]
min_deviation = min(min_deviation, current_max - min_val)
return min_deviation
Асимптотика:
- Время:
O(N * log(MAX_VAL))
. Начальное построение кучи O(N)
. Каждое число может быть поделено log(val)
раз, и каждая операция с кучей стоит log(N)
. Но так как N
и MAX_VAL
связаны, сложность можно оценить так.- Память:
O(N)
для хранения кучи.Кому хочется подробнее почитать про кучи, то залетайте: Ультимативный гайд по структурам данных и алгоритмам на Python. Часть 5: деревья, BST и heapq 👈🏻
#алгособес
olegtalks.ru
Ультимативный гайд по структурам данных и алгоритмам на Python. Часть 5: деревья, BST и heapq
Файловые системы, DOM, оргструктуры — всё это иерархии, для моделирования которых в программировании служат деревья (trees). Понимание деревьев — ключ к эффективной работе с иерархическими данными и многим продвинутым алгоритмам.
👍4🔥1🙏1👌1
Что получим при запуске кода?
Anonymous Quiz
20%
AttributeError: type object 'Child' has no attribute 'create'
5%
TypeError
28%
Parent
16%
None
30%
Child
🔥2 2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Marimo — как Jupyter, только лучше 😎
Marimo — open-source IDE, которая похожа на привычный Jupyter, но с рядом интересных преимуществ:
🔸при запуске ячейки автоматически запускаются зависимые ячейки (вот это супер удобно!);
🔸ноутбуки сохраняются без вывода ячеек в исполняемом
🔸интеграция с git из коробки;
🔸поддерживаются интерактивные элементы;
🔸встроенный менеджер пакетов, GitHub Copilot, AI-ассистенты, Ruff, экспорт в HTML и многое другое.
При этом поддерживает только Python 🐍
В статье разработчик рассказывает про все решения и преимущества.
Попробовать можно так:
#тулбокс
Marimo — open-source IDE, которая похожа на привычный Jupyter, но с рядом интересных преимуществ:
🔸при запуске ячейки автоматически запускаются зависимые ячейки (вот это супер удобно!);
🔸ноутбуки сохраняются без вывода ячеек в исполняемом
.py
формате, что обеспечивает полную совместимость с другими IDE (тоже круто!) и удобное версионирование.🔸интеграция с git из коробки;
🔸поддерживаются интерактивные элементы;
🔸встроенный менеджер пакетов, GitHub Copilot, AI-ассистенты, Ruff, экспорт в HTML и многое другое.
При этом поддерживает только Python 🐍
В статье разработчик рассказывает про все решения и преимущества.
Попробовать можно так:
pip install marimo && marimo tutorial intro
#тулбокс
🔥8👍4🙏1
🇨🇳 Alibaba выкатила новую модельку — Qwen3-Max-Preview.
По свежим бенчмаркам, эта модель с более чем 1 триллионом параметров обходит Claude Opus 4 и DeepSeek-V3.1 в задачах по программированию и математике. И это только превью версия, говорят, что официальный релиз будет еще лучше.
Контекст 262к токенов (это, конечно, не миллион, как у Gemini...), но зато весьма неплохое качество, особенно для моделей, которые доступны без региональных ограничений.
👨💻 Но есть нюанс. В отличие от многих своих предыдущих моделей, эту Alibaba решила не выкладывать в опенсорс. Доступ только через их веб-чат или API.
Для тех, кто больше любит Qwen, чем DeepSeek — точно хорошая новость☕️
По свежим бенчмаркам, эта модель с более чем 1 триллионом параметров обходит Claude Opus 4 и DeepSeek-V3.1 в задачах по программированию и математике. И это только превью версия, говорят, что официальный релиз будет еще лучше.
Контекст 262к токенов (это, конечно, не миллион, как у Gemini...), но зато весьма неплохое качество, особенно для моделей, которые доступны без региональных ограничений.
👨💻 Но есть нюанс. В отличие от многих своих предыдущих моделей, эту Alibaba решила не выкладывать в опенсорс. Доступ только через их веб-чат или API.
Для тех, кто больше любит Qwen, чем DeepSeek — точно хорошая новость
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6⚡3🔥1 1 1
Что важнее для VLM-агента: способность пройти Zelda или вынести всех в Street Fighter? 🤔
С одной стороны, есть VideogameBench: бенчмарк-эрудит. Он гоняет нейронки по десятку разных игр — от Civilization до Doom. Цель — проверить, насколько ИИ гибок и способен адаптироваться к совершенно разным правилам и задачам. Широта, так сказать, когнитивных навыков.
С другой — LLM Colosseum: бенчмарк только по одной дисциплине — Street Fighter III. Здесь не нужна эрудиция, здесь нужны рефлексы и тактика. Глубина понимания одной сложной системы.
Это, по сути, две разные философии тестирования ИИ. Первая проверяет общую компетентность, вторая — пиковую производительность в стрессовой среде.
Что показательнее для "интеллекта" нейросети?
🗿 — Эрудиция (VideogameBench). Универсальность важнее.
⚡️ — Рефлексы (LLM Colosseum). Глубина решает.
#щупаем_сорцы
С одной стороны, есть VideogameBench: бенчмарк-эрудит. Он гоняет нейронки по десятку разных игр — от Civilization до Doom. Цель — проверить, насколько ИИ гибок и способен адаптироваться к совершенно разным правилам и задачам. Широта, так сказать, когнитивных навыков.
С другой — LLM Colosseum: бенчмарк только по одной дисциплине — Street Fighter III. Здесь не нужна эрудиция, здесь нужны рефлексы и тактика. Глубина понимания одной сложной системы.
Это, по сути, две разные философии тестирования ИИ. Первая проверяет общую компетентность, вторая — пиковую производительность в стрессовой среде.
Что показательнее для "интеллекта" нейросети?
🗿 — Эрудиция (VideogameBench). Универсальность важнее.
⚡️ — Рефлексы (LLM Colosseum). Глубина решает.
P.S. Технический разбор обоих подходов, уже лежит здесь◀️
#щупаем_сорцы
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿6❤3⚡2
Почти все знают про
import this
. "Красивое лучше, чем уродливое", "Явное лучше, чем неявное" — это философия и культурный код языка.Но мало кто знает, как этот Дзен на самом деле родился. Не в ходе медитаций и не в результате божественного откровения.
Давайте узнаем как:
▫️Один чувак из core-команды устал от бесконечных холиваров в рассылках и решил "устаканить" правила.
▫️ При чём тут конкурс слоганов для футболок 👕.
▫️ Как сам модуль this следует прописанным в нём правилам.
#так_сложилось
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4 3❤1
🎓 Что в онлайн-курсах по программированию бесит вас больше всего? Можно выбрать несколько вариантов.
Anonymous Poll
67%
Нереалистичные обещания («стань мидлом за 3 месяца»)
34%
Отсутствие реальной обратной связи от экспертов
41%
Устаревшие или оторванные от жизни материалы
42%
Бесполезные «дипломы», которые ничего не значат
53%
Цена не соответствует качеству (записанные видео по цене живого обучения)
4%
Всегда всё нравится!
5%
Свой вариант 👇🏻
olegtalks.ru
Устали от Python? 5 безумных альтернатив, которые изменят ваш взгляд на код
Устали от однообразия в Python? Познакомьтесь с 5 безумными языками, где код пишут гопники, древние русы и авторы кликбейтных заголовков. Гарантируем, вы посмотрите на свой import по-новому.
Не даётся Python? Большая конкуренция? Есть альтернативы! 👍
1️⃣ YoptaScript — язык для «чётких пацанов», который транслируется в JS. Вместо банального if/else здесь используется куда более понятная конструкция:
2️⃣ В†† — для тех, кому ближе величие Древней Руси. Это набор макросов для C++, где программист — витязь, а баги — «ящеры». Соответственно, оператор
3️⃣ Birp (Большой Русский Питон) — полная идейная трансляция синтаксиса Python на русский.
4️⃣ Shakespeare Programming Language (SPL) — исходный код маскируется под пьесу Шекспира. Переменные — это персонажи, а присваивание значений происходит через оскорбления. Программа "Hello World!" начинается с того, что Гамлет говорит Ромео: You lying stupid fatherless big smelly half-witted coward!
5️⃣ Tabloid — кликбейт как Тьюринг-полный язык. Вместо
На примеры кода можете посмотреть в статейке◀️
На какой бы переписали свои проекты? Ах, да PLEASE LIKE AND SUBSCRIBE👍
вилкойвглаз
... иливжопураз
.break
здесь называется бить_ящеров
.def
превращается в объявить
, import
— в подключить
. Идеально для тех, кто считает английский язык единственным недостатком питона.print
— YOU WON'T WANT TO MISS
. Вместо return
— SHOCKING DEVELOPMENT
. А каждая программа обязана заканчиваться на PLEASE LIKE AND SUBSCRIBE
.На примеры кода можете посмотреть в статейке
На какой бы переписали свои проекты? Ах, да PLEASE LIKE AND SUBSCRIBE
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5 4😁2⚡1👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🤯 Tencent выкатили нейронку, которая из одного фото генерирует целый 3D-мир
Это HunyuanWorld-Voyager.
В отличие от аналогов, эта штука отдает на выходе не только RGB-картинку, но и полноценную карту глубины (RGB-D). На практике это значит, что сгенерированное видео можно без танцев с бубном превратить в настоящую 3D-сцену, например, через Gaussian Splatting.
Порог входа, конечно, конский — для запуска нужно минимум 60 ГБ видеопамяти. Но сам факт, что инструмент такого уровня теперь в open-source, — это прикольно.
Разобрал, как это работает и как запустить у себя (если у вас есть доступ к A100 😉) :
👉🏻 Tencent HunyuanWorld-Voyager: создаем 3D-миры из одного фото. Разбор технологии и гайд по запуску
А видеопересказ тут 👈🏻
#щупаем_сорцы
Это HunyuanWorld-Voyager.
В отличие от аналогов, эта штука отдает на выходе не только RGB-картинку, но и полноценную карту глубины (RGB-D). На практике это значит, что сгенерированное видео можно без танцев с бубном превратить в настоящую 3D-сцену, например, через Gaussian Splatting.
Порог входа, конечно, конский — для запуска нужно минимум 60 ГБ видеопамяти. Но сам факт, что инструмент такого уровня теперь в open-source, — это прикольно.
Разобрал, как это работает и как запустить у себя (если у вас есть доступ к A100 😉) :
👉🏻 Tencent HunyuanWorld-Voyager: создаем 3D-миры из одного фото. Разбор технологии и гайд по запуску
А видеопересказ тут 👈🏻
#щупаем_сорцы
👍6🔥3❤2🤯2🙏1 1