• Как найти минимальное число прохождений по автомату до конечного состояния с N вероятностью?

    @AlexSku
    не буду отвечать из-за модератора
    Вроде, марковский процесс описывает конечные (предельные) значения вероятностей при любых начальных условиях.
    Ответ написан
    Комментировать
  • Как написать функцию sin из библиотеки math.h в Си?

    @res2001
    Developer, ex-admin
    У вас sum2 не инициализируется в начале, а в цикле вы туда уже чего-то прибавляете.
    Как думаете какой результат будет возвращен функцией? Зависит от того что лежало на стеке где теперь лежит sum2, а лежать там может все что угодно.
    Ответ написан
    Комментировать
  • Посчитать многоугольник почему не работает програма?

    hint000
    @hint000
    у админа три руки
    Например: [(10, 0), (0, 10), (-10, 0), (0, -10)]
    Учтите, что код, правильно работающий с целыми числами, будет давать сбои на вещественных числах из-за ошибок округления. Т.е. вы можете получать очень-очень маленькую длинну суммарного вектора (без округления был бы чистый ноль, но компьютер не работает с вещественными числами без округления), из-за этого условие vector_sum == zero_vector не выполнится.
    Ответ написан
    Комментировать
  • Почему я не могу попасть в single-user mode [решено]?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    WTF? Это у меня кривые руки или в ядре при переходе от 4.х к 5.х опять что-то втихушку поправили

    single -- это не параметр ядра вообще. Это параметр init. Сравнивай системы инициализации.
    С systemd для этого эффекта можно использовать параметр systemd.unit=rescue, см.

    Ну и имеет смысл проверить, что grep -w single /proc/cmdline подтверждает, что параметр в неизменном виде добрался до юзерспейса.
    Ответ написан
    9 комментариев
  • Как расшифровать JSON Web Encryption?

    vabka
    @vabka Куратор тега C#
    Токсичный шарпист
    Вот в самом репозитории Jose есть пример использования x509:
    var payload = new Dictionary<string, object>()
    {
        { "sub", "mr.x@contoso.com" },
        { "exp", 1300819380 }
    };
    
    var privateKey=new X509Certificate2("my-key.p12", "password", X509KeyStorageFlags.Exportable | X509KeyStorageFlags.MachineKeySet).PrivateKey as RSACryptoServiceProvider;
    
    string token=Jose.JWT.Encode(payload, privateKey, JwsAlgorithm.RS256);


    У X509Certificate2 есть метод с говорящим названием: CreateFromPemFile
    Ответ написан
    Комментировать
  • Где можно прочитать про всю суть ЯПов под капотом?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    5d66774c767f2234030678.png
    Ответ написан
    Комментировать
  • GPG шифрование в сравнении с VeraCrypt. Надёжно?

    vabka
    @vabka
    Токсичный шарпист
    1. Надёжность следует сравнивать на примере конкретных алгоритмов с заранее известными параметрами
    2. Каждый из этих продуктов поддерживает несколько разных алгоритмов. Причём эти наборы пересекаются

    VeraCrypt:
    VeraCrypt может использовать следующие алгоритмы шифрования: AES, Serpent, Twofish, Camellia, Кузнечик, а также комбинации этих алгоритмов.


    GPG:
    Работа с асимметричным шифрованием ElGamal и RSA (длина ключа от 1024 до 4096 бит).
    Поддержка блочных алгоритмов симметричного шифрования AES, CAST5, 3DES, Twofish, Blowfish, Camellia, а также IDEA с помощью плагина.


    Тоесть при использовании одинаковых алгоритмов шифрования с одинаковой длиной ключа - надёжность должна быть сходной.
    Иначе будет зависеть от выбранного алгоритма
    Ответ написан
    Комментировать
  • UDP-UDP. Как называется такая штука?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    То, что вы хотите, называется "зеркалирование трафика", можно легко обойтись без велосипедов.

    https://superuser.com/questions/1289166/mirror-all...
    Ответ написан
    1 комментарий
  • Варианты миграции базы MSSQL на Postgrespro SQL?

    vabka
    @vabka
    Токсичный шарпист
    mayton2019 дал вполне рабочий инструмент: https://github.com/dalibo/sqlserver2pgsql
    А на счёт импортозамещения хочется задать встречный вопрос:
    Вам задачу решить или деньги некуда девать?

    Если второе - можете обратиться к какому-нибудь сертифицированному "интегратору", который вам предложит своё решение в виде группы инженеров, которые запустят скрипт из первой ссылки.

    UPD:
    Ещё есть pgloader, который выглядит как более полноценное решение:
    https://pgloader.io/

    Да и вообще беглый поиск выдаёт кучу разных рецептов, включая встроенные в Pg штуки:
    https://habr.com/ru/articles/694766/
    Ответ написан
    3 комментария
  • Почему в SQLiteStudio так мало типов данных?

    vabka
    @vabka
    Токсичный шарпист

    Их же намного больше

    Кто сказал?
    В документации вот что пишут:

    Most SQL database engines (every SQL database engine other than SQLite, as far as we know) uses static, rigid typing. With static typing, the datatype of a value is determined by its container - the particular column in which the value is stored.

    SQLite uses a more general dynamic type system. In SQLite, the datatype of a value is associated with the value itself, not with its container. The dynamic type system of SQLite is backwards compatible with the more common static type systems of other database engines in the sense that SQL statements that work on statically typed databases work the same way in SQLite. However, the dynamic typing in SQLite allows it to do things which are not possible in traditional rigidly typed databases. Flexible typing is a feature of SQLite, not a bug.

    На уровне синтаксиса, конечно, ты можешь использовать всякие varchar-ы, но в этом нет смысла, тк они всё равно будут представлены как один из этих пяти классов.

    Varchar = text
    Boolean = integer
    Datetime =сам реализуй через text, integer или real
    Float = real.

    Если тебе очень нужно - сам пиши create table с теми типами, которые тебе нужны.
    Ответ написан
    Комментировать
  • Как оптимизировать элементы на двухмерном массиве(пиксели) в прямоугольники?

    Griboks
    @Griboks
    1) Грубо говоря, у вас есть одномерный массив бит. Каждую отрисовку можно записать как бинарный сдвиг 1 << n (при очищении считаем массив == 0), где n - индекс первого пикселя фигуры.

    2) Тогда рисование можно заменить на череду бинарных И: (1 << n1) & (1 << n2) & (1 << n3) & .... Получается, можно сделать эти операции векторными и многократно ускорить рисование.

    3) Разобьём панель рисования на отдельные чанки (подквадраты). Тогда неизменившиеся квадраты можно даже не перерисовывать. При этом изменившиеся квадраты можно перерисовывать параллельно. Поздравляю, вы изобрели видеокарту!
    Ответ написан
    Комментировать
  • Как сделать авто-перезагрузку кода Python?

    Vindicar
    @Vindicar
    RTFM!
    Быстрое и грязное решение
    while True:
        try:
            ... # твой код
        except Exception as err:
            print(err)
    Ответ написан
    2 комментария
  • Как работает аудиоаппаратура?

    Stalker_RED
    @Stalker_RED
    Где-то в вашей мощной аппаратуре есть усилители. Телефон излучает радиосигнал, провода перед усилителями их улавливают, усилитель усиливает, и вы слышите то, что получилось.
    И 3G не только на 2100, он и на 900 мегагерц бывает. Но слышите вы конечно не мегагерцы, а какие-то гармоники, которые смогли пройти через фильтры усилителя.
    Ответ написан
    Комментировать
  • Подсчет hash суммы .iso образа?

    @kalapanga
    Достаточно этим программам брать файлы для помещения в образ в разном порядке и контрольная сумма образа будет уже разной. Кроме того сама файловая система ISO 9660 имеет разновидности.
    Ответ написан
    Комментировать
  • Как усовершенствовать код?

    @Bright144
    держи
    d = {'5':["Сегодня больше отличников", 0],
        '4': ["Сегодня больше хорошистов", 0],
        '3': ["Сегодня больше троечников", 0]} #ученики с оценкой 3, 4, 5
    
    students = int(input("Введите количество учеников:"))
    print()
    for grade in range(1, students+1):
        print(f'{grade}-й из {students} учеников')
        students_grade = input("Какую оценку ученик получил?:")
        d[students_grade][1] += 1
        print()
    
    print(max(d.items(), key=lambda x: x[1][1])[1][0])
    print("\nКоличество учеников,получивших 5:", d['5'][1], ";", "Количество учеников,получивших 4:", d['4'][1], ";", "Количество учеников,получивших 3:", ";", d['3'][1])
    Ответ написан
    2 комментария
  • Почему сервер долго отвечает на запрос(laravel octane)?

    AmdY
    @AmdY
    PHP и прочие вебштучки
    Смотрите на блокирующие операции. Например, сессии на файлах и другие файловые операции. Ограниченый пул конекшинов к базе. Долгие запросы к БД, драйвер же наверняка не асинхронный. Пользуйтесь профайлингом, чтобы найти балтлнек.
    Ответ написан
    Комментировать
  • Эффективно ли хранить массивы в виде объекта?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Храните просто и массив, и объект (а лучше - Map), в котором id будет сопоставлен индексу в массиве. Тогда вы, потратив немного памяти, получите плюсы обеих структур данных.

    На вопрос "убьёт ли это производительность" можно получить ответ очень легко: запрофилировать вариант до и после и сравнить. В общем случае на него ответить просто невозможно - откуда мы знаем, какие конкретно вы будете использовать алгортимы и какие у вас вообще интерфейсы. По сути вопрос тогда сводится к "какая разница между массивом и объектом", а на него ответ даётся примерно на седьмой странице любого учебника.
    Ответ написан
    5 комментариев
  • Можно ли в одном проекте создать несколько выполняемых или jar файлов?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Можно.
    Это называется модули maven.
    Ответ написан
    1 комментарий
  • Xeon e5 2670 v3 в after effects?

    xez
    @xez Куратор тега Железо
    TL Junior Roo
    Работать будет
    Ответ написан
    Комментировать
  • Восстановление XFS после резкого отключения питания?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    mount -a
    монтирует все, что указано в fstab в автоматическом режиме...
    рекомендую монтировать именно так - чтобы не терять какие то опции, параметры и т.п.
    Ответ написан
    Комментировать