Задать вопрос
  • Платно ли приглашение людей в приватные репозитории с Github Pro?

    Говорят, что нет, доплачивать не нужно.
    https://github.com/orgs/community/discussions/22051
    Главное не путать персональную подписку Pro и подписку для организаций Team - вот в случае с Team надо будет платить за каждого члена организации.

    Старый ответ
    Да, платно, потому что фичи Pro версии распространяются на всех членов организации/репозитория.
    67d1c15317acd719021118.jpeg
    Ответ написан
    6 комментариев
  • Как парсить динамические сайты на python?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    - Либо анализ http запросов и попытка обращения напрямую к ним -
    dynamic web page scraping with python, средняя сложность, максимальная производительность, легко вычисляется.
    - Либо Chrome DevTools Protocol (zendriver) - высокая сложность, средняя производительность, тяжело вычисляется.
    - Либо Selenium, простая сложность, минимальная производительность, легко вычисляется.
    Ответ написан
    Комментировать
  • Почему могут появляться искажения изображения при низкой частоте?

    NeiroNx
    @NeiroNx
    Программист
    Такое может быть, если там что-то отвалилось и при тепловом расширении вновь появляется контакт.
    Ответ написан
    Комментировать
  • Как правильно написать код на Python для шифра "Цезарь"?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Заведите строку со алфавитом, по которому идёт шифрование, и тогда вам будет без разницы, какие символы и сколько использовать. Если символа нет в алфавите, то оставляете его как есть. Если символ есть в алфавите, то нахо́дите его позицию, добавляете смещение по модулю длины алфавита, находите новый символ в вычисленной позиции.
    Ответ написан
    Комментировать
  • Знаю что данная задача решается методом двух указателей, но не понимаю почему мы двигаем указатель с меньшей высотой в сторону противоположного?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Рассмотрите один столбик (допустим, номер i). Какой высоты в нем может быть вода? Обозначим за x. Она не должна выливаться ни слева ни справа. Значит, с обеих сторон должен быть столбик с высотой хотя бы x. Раз есть хотя бы один, то максимум точно должен быть хотя бы x. Отсюда x <= max(h[0..i-1]) и x <= max(h[i+1..n-1]) Значит высота воды в i-ом столбике: min(max(h[0..i-1]), max(h[i+1..n-1])). Уже можно просто вот это подсчитать за 2 прохода и получить решение. Ну, только не забыть что там надо max(x, h[i])-h[i] к ответу прибавить, ведь если текущий столбик слишком высокий, то вся вода с него стечет.

    Но можно думать дальше. Давайте обрабатывать не все столбики подряд, а посмотрим с краев. С крайних столбиков все, понятно, вытекает наружу. Пусть крайний левый меньше. Рассмотрим второй столбик слева. Мы уже знаем max(h[0..i-1]) в нем - это один левый столбик. И оно точно меньше max(h[i+1..n-1]), потому что справа уже есть крайний столбик, который выше самого левого. Мы незнаем точное значение max(h[i+1..n-1]), но мы знаем что max(h[i+1..n-1]) >= h[n-1] >= h[0] = max(h[0..i-1]). Вот мы знаем высоту воды в столбике 1, мы же берем минимум из двух значений. Даже если мы не знаем максимум справа, мы знаем, что он точно больше максимума слева и в ответе не участвует.

    Вот мы и обработали второй столбик. Теперь перейдем к третьему. При этом можно первые 2 столбика объеденить в один высоты max(h[0], h[1]). Это и есть сдвиг указателя, только при этом мы смотрим не на сам столбик, а аккумулируем максимумы с краев.

    Но, если бы мы смотрели на второй справа столбик, рядом с большим их двух крайних, то мы не могли бы сразу сказать, а какая там высота воды. Мы в нем знаем max(h[i+1..n-1]) - высота последнего столбика. Но какое в нем max(h[0..i-1]) мы не знаем и не можем сказать, больше ли оно или нет, а значит, не можем посчитать x.
    Ответ написан
    1 комментарий
  • Ошибки в программе на .Net?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Для таких вещей нужно иметь необновляемую виртуалку, залоченную гвоздями, чтобы не приведи Господи не обновилась. Прошло обновление на компонент, появилась проверка там где ее не было, раньше никто об этом не думал, а теперь ква.
    Кроме того, вполне возможно, что там есть проверка на диапазон дат и 2025 год там просто невозможен :)
    Ответ написан
    1 комментарий
  • Где найти HDMI 4K 60 Hz для type-c/thunderbolt с подзарядкой?

    15432
    @15432
    Системный программист ^_^
    Так вы не то ищете. Ищите Thunderbolt 3 dock station. И будет вам желаемое.
    Ответ написан
    Комментировать
  • Как добавлять нейросети в игры Unity/UE5/GODOT?

    @SWA512
    Gamedev
    В Unity сейчас активно развивается фреймворк Sentis, вот примеры с моделями.
    Для LLM моделей например есть LLamaSharp.
    Если вам нужны собственные решения с обучением, то у Майкрософт есть статья по созданию модели классификатора изображений.
    Ответ написан
    Комментировать
  • Как отследить что грузит виртуалку?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Настроить мониториг нагрузки и логирование. Заббикс, мунин, графана с прометеем и прочие варианты.
    Ответ написан
    3 комментария
  • Может ли возрасти трафик при использовании модема или VPN?

    @Pb_hard
    Некоторые провайдеры не тарифицируют трафик на различные площадки .
    Например ютуб смотрите, каждый день по несколько гигабайт видео, а в тарификацию это не попадает.
    Начнете смотреть через впн - будет попадать.
    Ответ написан
    Комментировать
  • Как работает физика в мультиплеер играх на клиенте?

    maaGames
    @maaGames
    Погроммирую программы
    Данные отсылаются на сервер и там происходит расчёт по "реальным" данным от всех игроков. В это время локально происходит расчёт по данным на клиенте и быстренько рисуется, что получилось. Когда от сервера приходят реальные координаты объектов, то данные на клиенте перезаписыаются и отображаются реальные положения объектов. Если в расчётах на клиенте и на сервере возникают какие-то расхождения, то игрок будет видеть "дёрганья" объектов. Это же касается вообще всех действий, что бы на клиенте не было посчитано, пока сервер не подтвердит правильность вычислений, действие не будет принято (возникает всеми любимый инпут лаг).
    Ответ написан
    Комментировать
  • Где найти HDMI 4K 60 Hz для type-c/thunderbolt с подзарядкой?

    xez
    @xez
    TL Junior Roo
    Фирменный эпл точно это умеет
    Ответ написан
    5 комментариев
  • Можно ли видео на сайте без сохранение на диск показывать в меньшем разрешении?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Видео в любом случае должно быть кем то сконвертировано, перед отправкой клиенту, варианты:
    - Либо множество заранее подготовленных видео роликов с нужным качеством (ютуб так делает), потребуется сильно больше места на диске, но нагрузка на процессор будет сильно меньше + можно выбрать ночное время для обработки.
    - Либо сервер, который будет конвертировать видео в реальном времени, но нагрузка на процессор будет сильно больше.
    Ответ написан
    5 комментариев
  • Можно ли видео на сайте без сохранение на диск показывать в меньшем разрешении?

    kawabanga
    @kawabanga
    На хостинге есть видео. Размер видео 100 Мб.

    Установите ffmpeg и просто базовым запросом перекодируйте в тот же размер что у вас есть. Удивитесь сокращению размера раза в два.

    Видео запускается через тег video

    Используйте библиотеки, типа videojs. они действительно имеют больше возможностей.

    На смартфонах такое разрешение не нужно.

    Настройки пользователя или конфиги пользователя в вашей системе.

    К примеру, на десктопах показываем исходник = 1080, на планшетах = 720, на смартфонах = 560.

    Изначально нужно закодировать. ffmpeg перегоняет очень быстро файлы в разные форматы на m1 макбуках (4x от изначального 1080 файла), думаю современные процессоры умеют так же.
    В любом случае придется хранить все 3 версии, но тут нюанс -
    576 - может весить 5-10мб
    1080 - 20-30 мб
    720 - около 15.

    В итоге все 3 версии готовые - меньше вашего изначального файла. Продумайте им названия и внедрите в систему.
    Ответ написан
    Комментировать
  • Мне нужно создать телеграм бота наподобие личного дневника, как это сделать?

    С чем именно у тебя возникла трудность?


    Можете дать какие-нибудь наводки, что бы я понял, что мне нужно сделать, пожалуйста?

    Что сделать чтобы что происходило?


    По идее с помощью первой кнопки бот должен сохранить сообщение пользователя о прошедшем дне на сегодняшнюю дату

    Видимо бот должен просить отправить сообщение на день и сохранять куда-то текст.


    а при помощи другой выдать запись за любую другую и, если на нужную дату записи нет, сообщить об этом

    Видимо должен просить пользователя отправить дату, или предлагать список доступных дат (например в виде кнопок). И искать запись в своём хранилище на эту дату.

    Получается, тебе нужно определиться с:
    1. Где хранить записи и разобраться, как с таким хранилищем работать. Самое просто тут - в обычных текстовых файлах.
    2. Как именно в деталях должно строиться взаимодействие с пользователем и как такое взаимодействие можно запрограммировать.
    Тут можно использовать диаграмму состояний, например
    Ответ написан
    Комментировать
  • Сохранение файлов с помощью python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    1. Захватываешь блокировку;
    2. Проверяешь наличие файла на диске:
      • Если нет, начинаешь скачивание в файл с тем же именем;
      • Если есть, начинаешь скачивать в файл с другим именем;
    3. Отпускаешь блокировку.
    Ответ написан
    Комментировать
  • Из-за чего рандомно оператор блокирует VPN не везде?

    @Drno
    просто на разные шлюзы уходит трафик, а там видимо разные настройки у ТСПУ. в любом случае это вопросы к оператору \ РКН
    А насчет блокировки - скоро будет.. уже процесс идёт)
    Ответ написан
  • C++ Оператор и его перегрузка?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Ну вот так прнято в С++. Оператор префиксного инкремента (++i) имеет такую сигнатуру - он возвращает ссылку на измененный объект. Если выхотите чтобы у вашего класса Date можно было сделать ++date, то надо переопределить вот такой вот оператор. Это позволяет писать более читаемый и короткий код. Вместо date.IncremeantAndReturn() можно использовать идиоматичное ++date, или даже что-то вроде while (++date < deadline). Это не обязательно делать, но иногда это весьма удобно и полезно.

    Оператор должен возвращать измененное значение, поэтому и возвращается *this после его увеличения;

    В этом коде Сopy не используется. Оно тут не нужно вообще. копия понадобится для постфиксного инкримента (i++), который должен возвращать неизмененный объект.

    Передача *this в конструктор Copy - это для вызова конструктора копирования, чтобы, внезапно, создать копию текущего объекта. Подумайте, как вам скопировать текущий объект? Надо новому объекту присвоить текущий, или в конструктор передать ему текущий объект. Но как передать текущий объект? У вас есть указатель на него this. Разыменовав этот указатель (*this) вы как раз можете передать текущий объект куда надо.
    Ответ написан
    Комментировать
  • Как сделать 10 гигабитную локальную сеть?

    https://habr.com/ru/companies/ruvds/articles/864742/

    и ещё пара статей там же есть по поиску, в т. ч. про 10
    Ответ написан
    Комментировать
  • Как сделать 10 гигабитную локальную сеть?

    @ki11j0y
    У меня дома 10гбит сеть, есть nas, почти все диски hdd raid5, и есть raid0 для не важных файлов.. честно сказать ? Через raid 0 даже нет смысла на hdd иметь 10гбит сеть, а вот уже raid на nvme уже имеет смысл. На материнке 2.5гбит и нет полной утилизации канала при работе с рейдом на hdd
    Ответ написан
    1 комментарий