Веб-тренажёры
Условие слева, редактор справа, тесты внизу — разбирается целиком, вместе с примерами.
Вернуть длину самой длинной подстроки без повторовзадача на экране и разбор поверх неё
Нажали сочетание — приложение сняло экран, прочитало условие и код и показало разбор поверх редактора: решение, как его объяснить вслух и сложность.
macOS 14.2 и новее · Windows 10 и 11 · первые 30 минут бесплатно
как это выглядит
Ответ приходит потоком и всегда в одном порядке: условие своими словами, ход мысли, код, сложность. Читать его можно с первой строки — дочитывать до конца, чтобы начать говорить, не нужно.
Дан массив чисел и target. Вернуть индексы двух чисел, дающих в сумме target.
# nums = [2, 7, 11, 15], target = 9 -> [0, 1]
def two_sum(nums, target):
for i in range(len(nums)):
for j in range(i + 1, len(nums)):
# перебираю все пары — а если чисел сто тысяч?
Условие. Найти два числа, которые в сумме дают target, и вернуть их позиции. Числа берут по одному разу, ответ гарантированно есть.
def two_sum(nums, target):
# число -> его позиция
seen = {}
for i, n in enumerate(nums):
if target - n in seen:
return [seen[target - n], i]
seen[n] = i
return []
Сложность. По времени O(n) вместо O(n²) у перебора пар, по памяти O(n) на словарь. Пустой массив и отсутствие пары дают пустой ответ, повторяющиеся числа не мешают: позиция перезаписывается.
Решение — человеческое, а не олимпиадное. На интервью защищают понятный код: обычный цикл, говорящие имена, разбор крайних случаев. Про более быстрый способ модель скажет одной фразой в конце — этого достаточно, чтобы упомянуть его самому и не выглядеть так, будто решение пришло откуда-то со стороны.
что происходит после нажатия
Дольше всего идёт не снимок и не распознавание, а сама модель. Вот на что уходит время от нажатия до полного разбора — типичные числа, а не обещание: на медленном интернете или на длинном условии каждая полоса растягивается.
Четвёртую полосу ждать целиком не обязательно: к моменту, когда допечатывается сложность, условие и ход решения вы уже прочитали и можете говорить.
вопросы вдогонку
Задача остаётся в памяти сеанса на пятнадцать минут. Всё, что вы спрашиваете дальше — голосом интервьюера или сами, — идёт к модели вместе с этой задачей и прошлым разбором. Без такого контекста уточнения уходили в пустоту: ответ приходил про что-то похожее, но не про то.
где это работает
Поэтому разницы между LeetCode, HackerRank, Codewars, CoderPad, общим редактором интервьюера и просто вставленным в чат условием нет.
Условие слева, редактор справа, тесты внизу — разбирается целиком, вместе с примерами.
Вернуть длину самой длинной подстроки без повторовИнтервьюер пишет условие руками в тот же файл, где вы отвечаете. Тоже просто текст на экране.
Напишите функцию, которая склеивает два отсортированных спискаЗадача в комментарии, код рядом, тесты в соседнем окне — снимается активный экран.
Почините этот метод так, чтобы тесты проходилиУсловие прислали картинкой. Для приложения это ничем не отличается от страницы тренажёра.
Что выведет этот код и почемуЧестное ограничение: очень мелкий шрифт и тёмная тема с низким контрастом читаются хуже. Если код набран восьмым кеглем, увеличьте масштаб редактора — распознавание на вашей машине станет точнее, а с ним и ответ.
честно
вопросы
По сочетанию клавиш оно делает снимок активного экрана и распознаёт текст средствами системы — Vision на macOS и Windows.Media.Ocr на Windows. Снимок и распознанный текст уходят модели вместе: картинку она видит целиком, а текст нужен, чтобы не терялись мелкие символы кода.
Да. Следующие пятнадцать минут вопросы идут вместе с этой задачей и прошлым разбором, поэтому «а почему тут не сломается на нуле?» остаётся вопросом про ваш код, а не про абстрактную теорию.
Модель просят решать так, как написал бы человек на доске: обычный цикл или рекурсия, говорящие имена, без трюков и формул, которые надо знать наизусть. Про более быстрый способ она скажет фразой в конце, чтобы вы могли упомянуть его сами.
Нет. Снимается весь активный экран, а что на нём главное, модель определяет сама. Если задачи на экране нет, приложение так и скажет и запрос тратить не станет.
Первые строки появляются через пару секунд, дальше текст идёт потоком. Снимок и распознавание занимают доли секунды, остальное — время модели.
На Windows окно скрыто от захвата. На macOS 14 и новее показывайте окно редактора, а не экран целиком: системный захват всего экрана видит все окна поверх.
дальше
Первые 30 минут бесплатно — их хватает на один разговор. Дальше подписка по времени или пакет собеседований.
macOS 14.2 и новее · Windows 10 и 11