Тренировки по алгоритмам 5.0 Собеседование по алгоритмам в прямом эфире + его разбор

Поделиться
HTML-код
  • Опубликовано: 15 ноя 2024

Комментарии • 7

  • @EjevikaViolet
    @EjevikaViolet 7 месяцев назад

    Замудрил с проверками. Там все просто: arr.sort()
    min_delta = abs(target - arr[0] - arr[1])
    min_diff_pair = (arr[0], arr[1])
    n = len(arr)
    i, j = 0, n - 1
    while i < j:
    targetij = target - arr[i] - arr[j]
    if min_delta > abs(targetij):
    min_delta = abs(targetij)
    min_diff_pair = (arr[i], arr[j])
    if targeti < 0: j -= 1
    elif targeti > 0: i += 1
    else:
    break
    print(*min_diff_pair)

  • @GrowHobbyRU
    @GrowHobbyRU 3 месяца назад +1

    что это за синтаксис for (const auto& [ l, r ] :workingIntervals) ? компилятор ругается...
    Хм... и я конечно не специалист но алгоритм(код)-решение второй задачи совсем не рабочий.
    Нужны еще циклы заполнения массива updates, а не просто ++updates[l] и --updates[r]!!!

    • @xephosbot
      @xephosbot 2 месяца назад +1

      Может плюсы старые? Такой синтаксис с C++ 17 появился. Можешь загуглить Structured binding declaration
      Позволяет декомпозировать структуры включая std::pair, std::turple. Т.е сразу в цикле получаешь поля структуры

  • @aleksandr_t
    @aleksandr_t 8 месяцев назад

    А почему во 2 задаче интервьювер отказался от варианта со сканирующей прямой (sweep line)? Он работает во всех случаях, так как таймеры у нас могут быть нецелые

    • @nikitarecanos1455
      @nikitarecanos1455 7 месяцев назад

      Через эту идею и решались такие задачи в какой-то из тренировок)

  • @nikitahurricane2186
    @nikitahurricane2186 8 месяцев назад +5

    Он списывает)

    • @s.silence_e
      @s.silence_e 6 месяцев назад

      Мне тоже так кажется на втором собесе чел просто в угол постоянно подсматривал, почти через каждое слово