Настройте плагин LeetCode в vscode и теперь с радостью отвечайте на вопросы

алгоритм

Всем привет, сегодня утром на станции Б увидел плагин leetcode, спрятанный в vscode up master на станции B. Только тогда я узнал, что есть еще этот артефакт. Но я не ожидал столкнуться с некоторыми проблемами при его использовании, и это заняло некоторое время, чтобы решить. Поэтому в дополнение к этому полезному для всех плагину Amway также пишет эту статью, чтобы помочь большему количеству студентов не наступить на яму.

Введение в vscode

vscode известен в отрасли и известен какРедкий шедевр Microsoft(побег). Изначально я не хотел вдаваться в подробности, но, поскольку многие фанаты все еще первокурсники, я кратко представлю их ручкой и тушью.

vscode разработан Microsoftредактор, строго говоря, это не IDE, а просто редактор. Но поскольку он поддерживает компиляторы, встроенные в основные языки, и его поддержка терминалов также очень хороша, это почти IDE, которая поддерживает множество языков и имеет множество функций. Согласно последнему исследованию stackflow в 2019 году, vscode сталСамая популярная среда разработки для разработчиков. Можно сказать, что в современных интернет-компаниях большое количество инженеров используют его на фронтенде, бэкенде или на других позициях разработки. Он бесплатный, легкий, кроссплатформенный и поддерживается множеством полезных плагинов.

Так что, используете ли вы Windows, Linux или Mac, вы можете использовать его очень удобно.

Подчеркните, что vscode поддерживает все основные языки, в основном все, что мы можем придумать, о чем мы слышали, но не слышали, он поддерживает. Я специально проверил,ПаскальОба поддерживаются, поэтому установка выполнена. Еще одна вещь, чтобы сказать студенческой группе, не слушайте какого-то учителя или определенный учебник, и установите визуальную студию или dev C++, это устарело.

плагин для vscode

Причина, по которой vscode такой мощный, заключается в том, чтоИспользуйте открытый исходный код, каждый из нас может разработать для него плагины. Именно из-за этого в vscode очень много плагинов, хотим мы этого или нет, можно сказать есть все.

Мы нажимаем на расширения на левой боковой панели, чтобы открыть рынок плагинов, где мы можем искать.

Например, если вы хотите написать Python, то вводим Python, и первым является интерпретатор Python:

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

То же самое касается С++:

Эти инструкции на самом делеСоответствует репозиторию в репозитории github., поэтому, когда мы нажмем на некоторые из этих ссылок, мы перейдем на github. Кроме того, если мы сами разработаем соответствующие плагины, мы также можем зарегистрировать их в vscode для использования другими.

Это тожедух открытого исходного кодаПричина в том, что даже если Microsoft является крупным бизнесом, невозможно одновременно поддерживать и поддерживать столько функций и плагинов усилиями одной компании.

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

плагин для литкода

После знакомства с плагином vscode начинаем входить в тему этой статьи. Как и ожидалось, мы искали leetcode на рынке плагинов и устанавливали тот, у которого больше всего загрузок.

После установки нажимаем и держимshift + ctrl(command) + pчтобы открыть панель поиска плагина. Введите leetcode, выберите первый вход, а затем введите номер учетной записи и пароль.

но ты найдешьОшибка входа.

Что случилось, почему не получилось, забыли неправильный пароль?

Итак, вы открываете веб-сайт leetcode и пытаетесь снова, и обнаруживаете, что пароль правильный, и на веб-странице можно войти.

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

Однако leetcode обновил только международную версию, а местная версия не была обновлена, поэтому, если вы используете местную учетную запись leetcode, нам нужно изменить только версию leetcode. Способ замены также очень прост, нажмите кнопку в форме земного шара выше, чтобы выбрать:

Однако я личноБолее рекомендуется использовать международную версию, потому что описание названия на английском языке будет понятнее, а обновление названия будет более своевременным. Более того, китайская версия leetcode также обновит механизм входа в систему в будущем, и она по-прежнему будет сталкиваться с проблемой невозможности входа в систему в то время.

Жаль, что чиновник откровенно признался в проблеме невозможности авторизоватьсяНет особенно хорошего решения, используйте только файлы cookie, чтобы обойти.

куки логин

Файлы cookie часто используются на веб-сайтах, и мы можем просто думать о них как оМаркер или сертификат, который идентифицирует личность.

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

Принцип использования файлов cookie также очень прост: после того, как мы успешно авторизуемся на веб-сайте, сервер веб-сайтаСтрока зашифрованного текста будет сгенерирована с использованием алгоритма шифрования на основе идентификатора нашей учетной записи или другой информации.. И отправить эту строку зашифрованного текста в браузер, браузер сохранит эту строку зашифрованного текста, поэтому в следующий раз, когда браузер получит доступ к веб-сайту, ему нужно будет передать только эту строку зашифрованного текста, и веб-сайт получит зашифрованный текст для расшифровки. Он может идентифицировать какой это пользователь, автоматически устанавливает его в состояние входа в систему и возвращает соответствующие данные.

Таким образом, данные cookie очень важны, ониЧто касается безопасности многих наших учетных записей. Если наши файлы cookie будут получены хакерами, наши учетные записи могут быть украдены. Поскольку алгоритмы симметричного шифрования практически не поддаются взлому, многие современные атаки на учетные записи браузера связаны с файлами cookie.

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

Предварительная подготовка

Поскольку используется нижний слой плагина leetcodeleetcode-cliинструменты командной строки, поэтому нам нужно убедиться, что наши инструменты командной строки имеют правильную версию локально.

В первую очередь нам нужно установить Node.js версии 8 или выше, способ установки Node.js можно легко найти в интернете, и установка тоже очень простая, поэтому я не буду здесь вдаваться в подробности.

Затем мы устанавливаем последнюю версию leetcode-cli через инструмент npm:

# to remove the old version
npm uninstall -g leetcode-cli
# to install the up-to-date version(2.6.17+)
npm install -g leetcode-tools/leetcode-cli

Операционные процедуры

Во-первых, нам нужно получить куки нашей учетной записи через браузер. Возьмем в качестве примера браузер Google Chrome.

Сначала мы открываем leetcode и входим под своей учетной записью и паролем, затем щелкаем правой кнопкой мыши и выбираем проверить:

Затем выберите XHR в разделе «Сеть»:

Затем нажимаем на проблемы в панели навигации сайта:

В это время информация о запросе перехода на веб-страницу переднего плана будет отображаться с правой стороны.Мы находим один из запросов с именем all, выбираем «Заголовки» и потянем вниз, чтобы найти файл cookie:

Мы копируем эту строку строк.

Снова откройте vscode, откройте плагин leetcode, выберите «Войти», на этот раз вПри выборе способа входа мы выбираем использование файлов cookie для входа.:

Затем введите номер счета и вставьте только что скопированный файл cookie.

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

использование плагина leetcode

Использование литкода очень простое и мало чем отличается от веб-версии.Нажмите на все, чтобы увидеть все вопросы, мы нажимаем на название вопроса, чтобы автоматически загрузить подробную информацию о вопросе для нас, и вопросы, которые прошли, будут отмечены зеленой галочкой.

Если мы хотим задать вопрос, щелкните правой кнопкой мыши и выберитеShow Problem

После этого появится всплывающее окно для выбора языка, мы просто выбираем язык, который используем чаще всего. Например, недавно я использовал Python для ответов на вопросы, поэтому выбрал Python3:

выбирать послеJust Open The problem file

vscode автоматически откроет для нас разделенный экран. мы можемписать код, глядя на проблемуДа, надо сказать, что это очень удобно.

конфигурация литкода

Наконец, коротко о некоторых конфигурациях плагина leetcode.

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

Эта конфигурация называетсяleetcode.workspaceFolder, путь по умолчанию — $HOME/.leetcode. HOME здесь — это переменная окружения вашей системы.Местоположение, указанное этой переменной, отличается для разных систем.

Мы можем открыть терминал и войти

echo $HOME

Посмотрите, куда указывает наш текущий каталог $HOME, конечно, мыВы также можете изменить эту конфигурацию самостоятельно. Мы открываем файл конфигурации vscode, ищем leetcode.workspaceFolder, мы можем найти конфигурацию в vscode, мы можем изменить путь, который мы хотим.

Другая конфигурацияЯрлыки редактора, мы обнаружим, что под открываемым файлом leetcode py будут две кнопки. На этой картинке их три, потому что я их настроил.

Эти кнопки кликабельны, ониимеют определенные функции. Например, «Отправить» — отправить текущий код на веб-сайт leetcode, чтобы помочь нам отправить код. Тест должен выполнить образец, чтобы увидеть, может ли образец пройти. Кроме этих двух есть еще два, один называется Solution, можно просмотреть текущий наиболее понравившийся код. Другой — Description, который показывает описание проблемы.

мы можемleetcode.editor.shortcutsИзменить в конфигурации:

Суммировать

С помощью этого плагина мы можем избавиться от использования веб-страницы для ответа на вопросы. Я должен сказать, что этоОчень удобно, и для нас, программистов, я думаю много проблем в leetcode, мы обязательно столкнемся.Вопрос только в том, строчите ли вы или берете интервью, когда сталкиваетесь с этим..

Сегодня выходные, желаю всем удачной викторины,обращать вниманиеПойдем.