Как стать автором
Обновить
2
0
Александр @Question_man

Пользователь

Отправить сообщение

Попробовал реализоваать идею, получилось так (пришлось сделать причудливую мемоизацию, но напоролся на Memory Limit в этот раз):

class Solution: 
  def checkSubarraySum(self, nums: List[int], k: int) -> bool: 
      if len(nums) < 2:
        return False
      self.numbers = nums
      s = sum(self.numbers)
      self.cache = {}
  
      return self.checkSubarraySumRec(s, k, 0, len(nums) - 1)

  def checkSubarraySumRec(self, s, k, l, r) -> bool:
      if (l, r) in self.cache:
          return False
        
      if r - l == 0:
          self.cache[(l, r)] = True
          return False
      
      if s % k == 0:
          self.cache[(l, r)] = True
          return True
      
      self.cache[(l, r)] = True
      return self.checkSubarraySumRec(s - self.numbers[l], k, l + 1, r)  or \
  self.checkSubarraySumRec(s - self.numbers[r], k, l, r - 1)

Словарь разбухает быстро. На 2000000000 элементах забивается весь хип. Оставлю этот код здесь, мб кто-нибудь придумает оптимизацию.

Эта задача вчерашняя daily. Тоже решил за O(n^2), но закономерно уперся в TL (иначе это была бы Easy задача). Спасибо за такой красивый алгоритм!

У меня еще идея такая была:
1. Сначала посчитать сумму элементов всего массива (O(n) без учета суммирования длинных чисел)
2. Запустить рекурсию: на каждом шаге отнимаем от суммы либо левый конец, либо правый
3. Идем либо до того, как сумма становится кратна k, либо до 0
4. Результируем с помощью конъюнкции

Но я ее не тестил)

А что с перформансом при замене ~15% слоев? Вырастает ли он, если да, то на сколько? А при увеличении нелинейности что будет с перфом (чисто интуитивно: чем выше нелинейность, тем сложнее считать производную, т.е. перформанс должен замедлиться)?

Антох, правильно ли я понимаю, что хайп вокруг твоей персоны спадает и надо подогреть его такой очевидной и топорной статьей?

В воскресенье. Что ж, бывает...

Уже которая отличная статья от автора. Продолжайте в том же духе!

Зачем вы спорите с человеком, который очень смутно представляет, что такое литкод? По моему опыту, среди людей, которые говорят о "надрочить Х задач", таких большинство. Этим людям впадлу даже зайти на главную страницу с задачами и посмотреть, какие вообще кнопки там существуют (спойлер: можно выбрать только зелененькие задачки и нажать Pick one, в результате выпадет случайная задача; и думать тут особо не надо).

Во что, простите, вкладывается Nvidia? В ИИ что ли? Так они как видеокарты клепали, так и продолжают. Ну есть у них там какой-то департамент, который подобным занимается, но не более того. А чуйка - вещь очень специфическая... Вот у фантастов 19 века была чуйка, что к концу 20 века все небо будет в дирижаблях. Ага!

А там разве обратная степень (1/p) не превращает все выражение в 1 (в пределе)?

Как конспект сойдет. Как обучающий материал - не очень. Все как-то скомкано, куцо и мало понятно. Можно было бы рисунки со схемами сделать...

Да не, это рабочий-установщих шоколад ел.

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

P.S. Как же меня коробит, когда кто-нибудь заявляет: "Зачем знать вот это и вот это?" Давайе червям уподобимся еще, у которых единственный скилл - рыть землю.

Друзья, подскажите, cloak работает только с ovpn и другими протоколами из доки или можно произвольный протокол в него завернуть? Очень пригодилось бы заворачивание в него корпоративный впн.

public String readFile(String filename) throws IOException {
    File file = new File(filename);
    if (!file.exists()) {
        throw new IOException("File does not exist");
    }

    FileInputStream inputStream = new FileInputStream(file);
    byte[] bytes = new byte[(int) file.length()];
    inputStream.read(bytes);
    inputStream.close();

    return new String(bytes);
}

Похоже, что данный код свалится в компайл-тайме из-за неизвестного размера массива.

Право, лево... Несовременные термины. 

А, да? Тогда подскажите, пожалуйста, какие термины использует современная политология?

Удивительно, что люди, далекие от грузоперевозок и не знающие специфику, проецируют свой (айтишный, наверное) опыт на чуждую им отрасль.

Удивительно, что люди, далекие от других людей, которых первые критикуют за их некомпетентность, сами не имеют ни малейшего представления о роде деятельности вторых. Может я дальнобой с 30-летним стажем, как вы можете утверждать обратное?

Нормально - это конкретно сколько? 2х от рынка, 10х от рынка?

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

Здесь нет взаимосвязи. Доплачивали или нет, если можно безнаказанно слить дизель и продать, то это сделают с любой зарплатой.

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

Это очень простой вопрос. Потому что могли бесконтрольно и безнаказанно.

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

Так а почему они сливали соляру и т.д.? Мб просто не доплачивали водителям? Мб надо просто работникам платить нормально? Удивительно, что многие люди, исповедующие правые взгляды, не могут сложить 2 и 2.

Она также рассказывает, что для подготовки реферата рассылала студентам пособие в виде вордовского файла.

Всегда этот момент в преподах бесил: получаешь .docx на убунту, открываешь в LibreOffice и все едет к чертям собачим. Никак люди не научатся, что вордовский документ - худшее средство для пересылки информации другим людям (используйте пдф!!!!).

Нет такой специальности как "сетевик-сисадмин".

Вас в гугле забанили или как? 11.03.02/11.04.02 - конкретные коды специальности. Как же вы сумели проработать в "корпах продолжительное время" без навыка гугления?

1) По какому принципу подбирается дефолтный сокет-таймаут? Например, таймаут конекшна к базе и т.п.

2) Какой протокол транспортного уровня более предпочтителен для встраиваемых систем?

1

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность