Блог пользователя d_i

Автор d_i, 13 лет назад, По-русски

Всем доброго времени суток!

Примерно через месяц состоится двенадцатая ВКОШП.
В связи с этим, есть вопрос. Как готовиться к данному мероприятию?
Возможно не все захотят делиться своими тактиками и и способами подготовки, но всё же :
1. Какие стоит решать задачи?задачи с neerc?Стоит ли прорешивать предыдущие ВКОШП?
2. Какую тактику командного решения вы посоветуете? 1-2 решают, остальные смотрят другие задачи и пишут тесты?Конечно я понимаю, что посоветовать, не зная уровня команды, достаточно сложно. Но уровень у всех троих примерно одинаковый, не скажу что высокий, где то на стыке зёленый - синий на CF.
В прицнипе всё, буду рад любой помощи!
Спасибо.
  • Проголосовать: нравится
  • +17
  • Проголосовать: не нравится

13 лет назад, # |
  Проголосовать: нравится +17 Проголосовать: не нравится
У нас в команде система следующая:
  1. В начале контеста один человек логинится в винду, в проверяющую систему, настраивает среду, пишет template.
  2. Остальные два читают условия задач - с конца и с начала.
  3. Как только кто-то решил задачу, то варианта два:
    1. Если совсем тупая и очевидная - выгоняет текущего человека из-за компа, пишет, получает Accepted.
    2. Если задача уже не вида "A+B", то решение рассказывается второму человеку (который сейчас ничего не пишет за компом), если принимается, то придумавший садится писать. В конце код обычно перечитывается двумя членами команды (которые знакомы с решением) для уменьшения количества тупых минусов.
  4. В случае, если с задачей ступор, и есть, что еще написать, код печатается и автор садится читать по бумажке и исправлять/уменьшать код на листочке.
  5. Если придумали очень сложную задачу и комп занят, то обычно код пишется кусками на бумажке
Главное в командной олимпиаде - помните, что у вас есть целых 15 человеко-часов и только 5 компьютеро-часов и использовать все сильные стороны каждого из членов команды. Например, один хорошо решает графы, другой - математику и умеет искать тупые баги, третий пишет и дебажит за две минуты любой код.
  • 13 лет назад, # ^ |
    Rev. 3   Проголосовать: нравится +17 Проголосовать: не нравится

    Есть еще вариант тактики, которую использует tourist.

    1. Прочитать все задачи и для каждой задать число от 2 до 31 - время в минутах, которое понадобится, чтобы ее закодить.

    2. Отсортировать задачи по времени.

    3. Сдавать в этом порядке.

    P.S. Тактика очень сильно зависит от оценки соотношения задача/участник. Когда решалась простая олимпиада, мы по-очереди по-одному задачи сдавали, например. На NEERC я вообще все кодил, у меня это немного быстрее получалось. И т.п. Тогда остальные участники готовили пару злобных тестов, перечитывали все условия, чтобы не было косяков прочтения, и придумывали решения остальных задач (пересказ был отлажен на 100%).

    • 13 лет назад, # ^ |
        Проголосовать: нравится +8 Проголосовать: не нравится
      Что то я не видел что бы tourist прочитывал сразу все задачи.
      В основном, когда открываешь таблицу результатов, у него уже сделано пару Accepted-ов. 

      Вот в этом и мой интерес узнать хорошую тактику, потому что для одного она может быть чем то из области фантастики, а второй напишет довольно быстро и сдаст без минусов
      • 13 лет назад, # ^ |
        Rev. 3   Проголосовать: нравится +15 Проголосовать: не нравится

        Там, видимо, иф время не превосходит 5, то сдать сразу.

        В общем, обычные ошибки:

        1. К концу второго часа не прочитаны все задачи хотя бы двумя участниками.

        2. Постоянное написание кода вдвоем. (Т. е. отдай клаву напишу).

        3. Проговаривание кода при написании вдвоем - тормозит.

        4. Читающий код участник постоянно поправляет пищущего - тормозит. Загрузка читающего должна быть порядка 50%, иначе он используется неэффективно. Момент правок должен быть явно задан пищущим фразой вроде "так" (означает, что логический блок дописан - функция и т.п.)

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

        Дальше - строго индивидуально. Потренируйтесь пару раз и пусть неподалеку посидит более опытный участник (найдите где-нибудь).

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    У нас печальнее, я пишу код, остальные думают над задачей, которую либо не решим вообще, либо я под конец решу, так как велика разница в знаниях. Надеюсь по этой же схеме пройдем через Интернет-тур 30 октября, а там дальше ничего хорошего не светит.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Печальная ситуация, играл так. При серьезной разнице в уровне крайне рекомендуются личные тренировки.
      • 13 лет назад, # ^ |
          Проголосовать: нравится +8 Проголосовать: не нравится
        Я в принципе лично и занимаюсь все время, этот год выступить как-нибудь, а там, если в то же ИТМО пойти, то проблем с поиском людей не будет.
        • 13 лет назад, # ^ |
            Проголосовать: нравится +10 Проголосовать: не нравится

          В ИТМО есть одна проблема с поиском людей.

          Там зеленые за 5 лет не прокачиваются до серьезной команды :))))

          • 13 лет назад, # ^ |
              Проголосовать: нравится +8 Проголосовать: не нравится
            Смотря как готовиться самостоятельно и как давно была начата подготовка)
            Городскую в личном зачете в прошлом году выиграл с подготовкой от нуля за 2 недели, потом около месяца невнятного решения задач и возвращение к серьёзным тренировкам примерно 3 недели назад. Если снова не забрасывать, то можно и за год уровня набрать хорошо :)
            • 13 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              Проблема в том, что дойти до финала участником команды ИТМО сложнее, чем дойти до финала участником вуза кроме (СПбИТМО, СПбГУ, СГУ, МГУ) в одиночку.
          • 13 лет назад, # ^ |
              Проголосовать: нравится +3 Проголосовать: не нравится
            Кто сказал что не прокачиваются? В основном последние чемпионы мира из ИТМО начинали заниматься уже в универе:)
            • 13 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              Совместные утверждения. Есть мнение, что Petr НИКОГДА не был зеленым :)
            • 13 лет назад, # ^ |
                Проголосовать: нравится +5 Проголосовать: не нравится
              Кстати, кто? Мне казалось, что в крайней чемпионской команде ИТМО все трое - призеры всероссийских олимпиад по информатике/математике.
              • 13 лет назад, # ^ |
                  Проголосовать: нравится +9 Проголосовать: не нравится
                Женя Капун не был на информатике точно, да и математике вроде тоже (не уверен).
                Максим Буздалов имеет вроде диплом 3 степени на РОИ в 11 классе.
                Они явно наибольшего прогресса достигли в универе:)
13 лет назад, # |
  Проголосовать: нравится -9 Проголосовать: не нравится
1. Вылезти из синезеленого уровня
2. ?????
3. profit
  • 13 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    1. Пытаемся, но довольно тяжело, и не всё получается
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Вы последователь Хаустова? :) 

    Саратовский полуфинал школьной выигран командой с участником Mark_SamLIT, например.

    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Про Хаустова не понял?

      ну это 1 из 3-х участников, может остальные два были мего крутыми, с красными рейтингами везде!Так же тоже нельзя сравнивать.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      1. Я не знаю, кто такой Хаустов.
      2. Мне кажется, что здесь причина в низком нынешнем уровне саратовских школьников.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        Павел Хаустов утверждает, что рейтинг на CF отражает полный уровень участника.

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

        Просто CF имеет свой, особенный формат задач и соревнования, и рейтинг на CF не всегда имеет общее с реальной действительностью.

        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Я не утверждаю, что CF отражает полный уровень. На мой взгляд, что такое "полный уровень" весьма спорный вопрос. Я считаю, что если один участник синезеленый, а другой красножелтый и они оба написали некорое количество контестов в последнее время, можно с вероятностью 99% утверждать, что один из них круче другого.
      • 13 лет назад, # ^ |
          Проголосовать: нравится +8 Проголосовать: не нравится
        Вспоминается случай, когда региональную командную олимпиаду выиграла команда Тольятти. При этом от Саратова выступали Калужин, Рогуленко и Рахов (все в разных командах). Причина не только в низком/высоком уровне отдельных людей, но и в сыгранности команды.
  • 13 лет назад, # ^ |
      Проголосовать: нравится +2 Проголосовать: не нравится
    Александр Алексеевич знает толк в нумерованных списках
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Так каким образом лучше всего готовиться?Зарешивать кучу задач и прорешивать все online_judge?
  • 13 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    Я для себя выбрал каждый день разбирать по одному алгоритму и оставшееся время решение задач с нарастающей сложностью. И естественно принимать участие во всевозможных контестах
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Нет лучшего способа, я думаю. Скорее, это зависит от самого человека. Если бы лучший способ был, то все тренировались бы именно так :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    Можно научиться решать задачи в режиме "подумал вечером, поспал, подумал утром", но, при этом, не научиться решать задачи в стрессовом режиме. Виртуальные контесты лучше, мне кажется, чем нарешивание задач.
    • 13 лет назад, # ^ |
        Проголосовать: нравится +3 Проголосовать: не нравится
      Помню, у меня такое часто бывало. Думаешь, думаешь. Ложишься спать, все равно думаешь и уже когда почти засыпаешь, вдруг приходит правильное решение. Встаешь полусонный и не ложишься пока не заакцептишь :)
13 лет назад, # |
Rev. 2   Проголосовать: нравится +17 Проголосовать: не нравится

Вопрос для опытных игроков:

Когда Ваш товарищ, после прочтения какой-то задачи, говорит "Неее, Вась! Ее мы точно не решим, это гроб, давай читать другую...", то Вы:
1) Верите ему на слово и больше не прикасаетесь к этой задаче
2) Читаете задачу сами и решаете, так ли это
3) Я вообще не слушаю сокомандников, они вечно бред несут, ведь решить можно все
  • 13 лет назад, # ^ |
      Проголосовать: нравится +20 Проголосовать: не нравится

    4) Выгоняете его из команды за панику.

  • 13 лет назад, # ^ |
      Проголосовать: нравится +6 Проголосовать: не нравится
    2) Читаете задачу сами и решаете, так ли это
    5) Откладываем задачу "на случай ядерной войны"
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    double post

  • 13 лет назад, # ^ |
    Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

    triple post

  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +17 Проголосовать: не нравится

    SUPER 4 COMBO POST!

    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      ultra post?
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Rampage xD
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          в Dota наигрались? xD кстати, а много программистов-геймеров существует в природе?
          • 12 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится

            При чём здесь DotA? Эти фразы пошли из Unreal Tournament 1999 года.

            • 12 лет назад, # ^ |
                Проголосовать: нравится +6 Проголосовать: не нравится

              Не могу не понудить: дота здесь при том, что сейчас в ней можно увидеть надпись "Rampage" — и многие её по этой игре и знают, а не по древней UT1. Очень хорошо, что ты знаешь столь древний источник (а, может, можно залезть в историю ещё глубже?), но не стоит столь снисходительно отрицать причастность доты (да и чего бы то ни было) к настоящему.

              • 12 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится

                Глубже залезть нельзя, UT 1 — первое появление, ибо Впервые данный термин появился в игре Unreal Tournament в 1999 году.

                Кроме того, нельзя не забывать, что в DotA скопированы не только фразы, но и их озвучка, что в свою очередь многих вводит в заблуждение, будто это и есть оригинальный источник. Действительно, можно было бы промолчать по этому поводу, но мне всё же, как человеку, для которого UT 1 была его первой игрой, хотелось бы, чтобы таких заблуждений было меньше =)

  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

    если вы и ваш товарищ различаетесь по уровню(он покруче вас), то наверное, стоит ему поверить, иначе, самому прочесть

  • 13 лет назад, # ^ |
      Проголосовать: нравится +9 Проголосовать: не нравится
    6) Смотрим в монитор. Чаще всего это помогает, в лучшем случае - нет.
13 лет назад, # |
Rev. 2   Проголосовать: нравится +7 Проголосовать: не нравится

Такой вопрос опытным участникам: если в команде есть человек, который...хм, несколько послабее других, то чем полезно его занять?

UPD всем спасибо за ответы, некоторые идеи взял на заметку

  • 13 лет назад, # ^ |
      Проголосовать: нравится +17 Проголосовать: не нравится
    Приготовлением бутербродов и чая/кофе.
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +17 Проголосовать: не нравится

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

    Блин, зачем я ответил. Я же не опытный участник

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Наверное тем, что у него лучше получается. Я, например, в своей команде обычно решаю комбинаторику\задачи на формулы и не пишу ничего сложнее прочитать-сложить-напечатать. Пример того, что меня нельзя допускать к компьютеру, можно было наблюдать на московском четвертьфинале.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Таким полезно решать тупые задачи, где проходят тупые решения. Обычно, когда уже имеешь опыт, иногда тяжеловато придумать очень простое решение. Ну а если ничего такого нет, то дать ему до конца контеста... гроб :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится
    я конечно не особо опытный, но наверное ему стоит составлять тесты.
  • 13 лет назад, # ^ |
      Проголосовать: нравится +14 Проголосовать: не нравится
    В команде бесполезных людей не бывает. За последние два года, и чуть меньше сейчас в этом убедился прочно. Как минимум такого человека можно хорошо научить читать код и вылавливать баги на этапе написания. Еще есть такая роль, которую Gassa хорошо обозвал "работать плюшевым медвежонком". При объяснении кому-то (или чему-то) своей идеи, сам находишь в ней много ошибок.
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
мы например со своей командой частенько пишем контесты , берем задачки из neerc.ifmo.ru/school/ . Соревнуясь с командами нашей школы . дорешиваем , иногда делаем разбор задач которые важные или просто даем идею как решать . 
13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

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

Так как то, что одним подходит, другим может и не подойти. Если видите, что такой-то способ вам не подходит - ищете такой, который подойдет.

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