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

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

Привет!

В феврале стартовал набор на летнюю стажировку для разработчиков и аналитиков в Yandex.

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

Задачи соревнования подготовлены:

А также Chmel_Tolstiy, Andreikkaa, dalex, BogolyubskiyAlexey, VovanF98, a_mur_mur.

Разборы:

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

День рождения Васи
Закрытый ключ
Программист на пляже
Перемещение чанков
Разделение графа
Поиск
  • Проголосовать: нравится
  • +31
  • Проголосовать: не нравится

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

Всем привет. В задаче разделение графа реализовали несколько иной алгоритм, который проходит не все тесты. (не проходит 5-ый) Помогите понять в чем ошибка или покажите 5-ый тест, пожалуйста.

Номер посылки: 77055675.

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

    Вот эта строчка никак не изменяет ribs_list:

    sorted(ribs_list,key=lambda row: row[2])
    

    Надо написать:

    ribs_list.sort(key=lambda row: row[2])
    

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

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

Здравствуйте, уважаемые форумчане! Я поклонник компании Яндекс, хочу пройти туда на стажировку. Можете ли вы сориентировать, какой сложности нужно решать задачи из архива Codeforces, чтоб решить 6 задач контеста для стажеров Яндекса? Большое спасибо!

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

    Контест 2019 года по сложности похож на Educational Rounds. Я бы оценил задачу F как задачу Div2E, если решать через разделяй-и-властвуй за $$$O(n \cdot k \cdot \log{(n)})$$$, D и E как Div2D. Задача D, скорее всего, соответствует задачам D из ранних образовательных раундов, а задача E — задачам D из поздних образовательных раундов, $$$C$$$ как сложная Div2C или простая Div2D, остальные A=Div2A, B = div2B. В связи с этим, мне кажется, что можно решать образовательные раунды до E включительно для того, чтобы подготовиться к контесту на стажировку.

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

      dmkozyrev, спасибо огромное! Образовательные раунды — это div2 контесты? Можете подсказать в архиве Div2 E — соответствует какой сложности примерно, 2000 — 2200? Можете подсказать, если каждый день решать часа по 4, за сколько можно подготовиться? Я в самом начале..решаю только A из Div2, B и С пытаюсь, но чаще не получается.

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

        Образовательные раунды это отдельный вид раундов на codeforces: Codeforces Educational Round. Посмотрите в прошедших раундах, уже 90 таких раундов было. Чтобы оценить сложности, можно взять раундов 10 образовательных подряд, выписать сложности задач и взять медианы. Примерно 1000 часов тренировок = стабильный фиолетовый.