Українська
Відкрити в Telegram

ГілкаЕсть идеи как можно ускорить перебор всех значений? lru_cache уже добавил, но все равно медленно и MemoryError

17 повідомлень · –
Е
Фотографія
натисніть — покажемо
Есть идеи как можно ускорить перебор всех значений? lru_cache уже добавил, но все равно медленно и MemoryError
  1. 🍉
    Лучше подумай над алгоритмом
    1. Е
      Например? Предлагаешь оптимизировать саму рекурсивную функцию?
      1. 🍉
        Не перебором решить. Попробуй идти от четвёрки, применяя комбинации операций. Поиграйся с числовой прямой, посмотри каким образом число может попасть в 4
          1. 🍉
            Вот тебе подсказка: У тебя есть отправная точка (это 4) и две операции
            1. Е
              Почему отправная точка это именно 4? Мне же надо посчитать входные значения которые дают 4
              1. 🍉
                Тебе надо найти все N, которые "скатываются" в 4. Вместо перебора N, тебе надо идти от обратного, там сложность гораздо меньше
          1. K
            Правило Лопиталя, Вы увеличили карму 🍉 до 14632.88 (+13.21)
    1. Е
      Можно вообще тогда на C++ или Rust переписать, хочется продуманно оптимизировать
    2. 🍉
      Тут нужен другой алгоритм, а не брутфорс
  2. 🍉
    а, я задачу не так прочитал 😁 но если это помогло тебе придумать что-то, то я рад)
    1. Е
      Оказывается что эта функция возвращает на 1 больше чем количество единиц в двоичной записи исходного числа
  3. ⁣
    Такое обычно руками решают, берешь первые наборы входных параметров и смотришь, что там происходит. Обычно представлен какой-то базовый алгоритм или представлена некая зависимость, ака степени двойки. Почему так? Потому что иначе задача не решается не в лоб, а значит вообще не решается. Кароче надо научиться быстро искать зависимость выходного значения от входного

Відкрита публічна стрічка з пошукового індексу ChatCrawler — «Google по публічному Telegram»; оновлюється в міру обходу майданчика. Час — UTC.

Лише публічний контент, офіційний API Telegram. Про проєкт · Питання · Межі індексу · Прибрати сторінку з видачі · Каталог · Пошук · Як ми рахуємо