Рубрики

Советы и хитрости для конкурентоспособных программистов | Набор 1 (для начинающих)

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

Конкурентное программирование может быть улучшено только с помощью «ПРАКТИКИ, ПРАКТИКИ И ПРАКТИКИ». Постарайтесь решить как можно больше вопросов на таких сайтах, как practice.geeksforgeeks.org . Это поможет вам больше думать об алгоритмах.

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

Несколько дней до начала:

  1. Узнайте -Практика-Повторите -Попробуйте ежедневно изучать новую концепцию. Решайте вопросы ежедневно, один или два, если не больше !! После прохождения нового алгоритма или техники, мы должны немедленно найти его приложения и попытаться решить проблемы. Например, если вы изучаете динамическое программирование, постарайтесь решить все его проблемы. Приспособьте привычку чтения, которой большинство молодых людей не имеет в настоящее время.
  2. Пишите перед кодированием. Реализуйте все алгоритмы самостоятельно, а не копируйте их кем-то другим. Сделайте себе письменные заметки при изучении этих понятий. Математика — отличная область для начала соревновательного программирования.
  3. Становление нервозным — во время практики всегда решайте эту проблему, которая находится на грани ваших знаний, т. Е. Вы точно не знаете, как решить проблему, но вы знаете, что вы должны знать, чтобы решить эту проблему. Например, вы смотрите на проблему и можете сказать, что это простая проблема с графом, но вы ничего не знаете о графике.
  4. Деревья , графики , алгоритмы — убедитесь, что вы тщательно разбираетесь в понятиях деревьев, графиков и важных алгоритмов, поскольку есть хотя бы один вопрос, использующий их приложения в каждом конкурсе или раунде найма компании.
  5. Шорт — это мило. Лонг-конкурс хорош для обучения, но старайтесь участвовать во все более коротких конкурсах. Короткий конкурс — это настоящее соревновательное программирование. Мы должны сделать привычкой проводить какое-то короткое время в часы пик на форуме по программированию, где лучшие программисты тусуются, делясь своими мыслями и часто участвуя в дискуссиях.
  6. Сложность сложна — не зацикливайтесь на все меньшем и меньшем времени выполнения. Не тратьте время на чрезмерную оптимизацию вашего решения. Если решение принято, переходите к следующей проблеме. Сначала просто приобретайте привычку ежедневно кодировать, а потом переживайте о сложностях.
  7. Трудно прийти — некоторые люди говорят «Придерживайтесь одного сайта для практики», а другие считают, что вы должны попробовать все связки. Что бы вы ни решили, медленно, но верно начинайте решать более сложные проблемы.
  8. Целевое задание — если вы часто участвуете в конкурсах, предназначенных для заданий, обязательно прочитайте все предыдущие вопросы , алгоритмы и связанные с ними материалы, чтобы сократить ваши усилия, а также время выбора. Вы также должны попытаться ответить на предыдущие вопросы компании .

Последний день перед конкурсом, особенно если вы пытаетесь принять участие в конкурсе на получение работы

  1. Не ищите новых проблем, потому что это может вызвать панику в вашем уме.
  2. Примите достаточное количество сна накануне вечером. Держите свой ум расслабленным и избегайте стрессов

Во время конкурса

  1. Будьте внимательны — большинство программистов, когда видят новый вопрос, будут спешить набирать его в системе перед предварительным планированием или перед написанием логики для решения этой задачи. Иногда они застрянут в точке между вводом кода в систему и, возможно, потребуется снова начать кодирование. Если мы не введем систему перед тем, как взломать логику, будет полезно сэкономить время. Нужно начать с:
    1. Чтение постановки задачи как минимум дважды
    2. Анализируя постановку задачи
    3. Перед отправкой следует помнить шаблон ввода-вывода и многократно читать проблему, чтобы понять концепцию проблемы.
    4. Используйте ручку и бумагу для разработки логики, а затем код
    5. Внимательно прочитайте инструкцию конкурса ( ограничение по времени, значение различных символов, используемых на странице конкурса, количество разрешенных заявок и т. Д. )
  2. Часы тикают — следите за часами. Если вы не можете решить конкретный вопрос, у вас очень хорошо есть возможность перейти к следующему.
  3. Протестируйте тестовые примеры — если ваш код не принят, то снова просмотрите его и проверьте объявление переменных, сложность кода и попробуйте проверить свой код на наличие нескольких номеров тестовых случаев.

После конкурса

  1. Редакции ДОЛЖНЫ — После представления; даже если ваш код принят, просто не переходите к следующему вопросу. Попробуйте прочитать редакционную статью вопроса, это поможет вам лучше и эффективнее решить этот вопрос.
  2. Гики могут знать лучше. Изучение кодов, написанных другими выдающимися программистами, покажет отличные идеи (если это разрешено). Даже рассмотрение решения другой проблемы, которое мы решили, может раскрыть некоторые уникальные особенности проблемы и помочь нам рассмотреть ту же проблему с другой точки зрения. Важным моментом здесь является то, что вы можете встретить разные алгоритмы, которые используются для решения вопросов, изучить эти алгоритмы и убедиться, что вы их понимаете.
  3. Практика — не волнуйтесь, если вы не можете решить вопросы там, это просто означает, что вам нужно больше практики.
  4. Прошлое учит будущему. Хорошей практикой является придерживаться проблемы, которую мы не можем решить в течение как минимум 2 дней. Рассматривая решение, мы поймем, где мы отклонились от правильного пути, и помогли бы нашему мыслительному процессу в будущих попытках. Мы должны отметить проблемы, которые нам не удалось решить, и поэтому мы пошли на решение. Мы должны обязательно рассмотреть ту же проблему через пару недель и попытаться решить ее полностью.
  5. Время драгоценно — подготовка к чему-либо очень важна, будь то конкурсный день, экзамены или сдача проекта, что студент в основном не может сделать. Подготовка в последний момент часто не оправдывает ожиданий. Дайте достаточно времени, чтобы пройтись по алгоритмам, сэмплировать проблемы и поработать над своими сильными и слабыми сторонами.

Удачного кодирования!

Эта статья написана исключительно с участием наших университетских вундеркиндов — Рахула Агарвала, Адитьи Чаттерджи, Шубхама Сингха Раджпута, Винет Сетхии, Сайтеи Редди, Шейли Сета, Мудит Махешвари и Аджая Джайна.

Советы и хитрости для конкурентоспособных программистов | Набор 2 (язык, который будет использоваться для соревновательного программирования)

Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

Советы и хитрости для конкурентоспособных программистов | Набор 1 (для начинающих)

0.00 (0%) 0 votes