• В чем разница 2ух кодов?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Очевидно, что тест в системе не именно такой, как вы вводите. Код ввода и вывода в обоих кодах одинков, так что проболема в счете.

    Попробуйте ввести эти же 2 длинных числа, но поменять их местами, чтобы первое было коротким. Все работает?

    Сразу вижу 2 проблемы, вообще не обрабатывается случай num1.size() <= num2.size(). Во-вторых, в конце, где вы нормализуете число, если там окажется 11, где-то, то вы оставите в этом разряде 0, а не 1, как надо. Правда, при сумме двух чисел там 11 получится за длиной максимального числа не может появиться, ибо туда может прийти только +1 от переноса. Но код все-равно логически неверен.
    Ответ написан
    Комментировать
  • Почему функция re.search не возвращает None при пустой строке и как придать False значение пустому выводу от re.search?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Пустая строка попадает под вашу регулярку. Соответственно, при любой строке в s регулярка будет истинной. Если вы хотите проверить, что строка состоит только из пары совпадающих скобок, то ^(?:\(\)|\[\]|\{\})$
    Ответ написан
    Комментировать
  • Библиотеке os выводит непонятные символы, что делать?

    Vindicar
    @Vindicar
    RTFM!
    Не "библиотека os", а процесс, который ты запускаешь. В какой кодировке он выводит текст, знает разве что он сам (вероятно, или windows-1251, или cp866). Но почти наверняка не в юникоде, с которым работает питон.
    Так что кодировку придётся выяснять опытным путём и самому полученную строку перекодировать.
    Ответ написан
    Комментировать
  • Как из Lua вызвать функцию C++?

    Google: "lua ffi"
    Ответ написан
    Комментировать
  • Какие виды функций есть в C++, и как их различать?

    Функция cout из стандартной библиотеки C++ использует указатель для доступа к объекту ostream, который представляет поток вывода. Указатель используется для работы с методами и свойствами этого объекта, такими как << оператор для вывода данных.

    Обманул тебя ChatGPT.
    cout - это не функция, а объект.
    И конкретно в твоём коде указатели напрямую нигде не используются.
    Ответ написан
    Комментировать
  • Как написать подсчет времени проведенного в игре для лаунчера?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Просто следишь, что такой-то процесс всё ещё запущен и находится в памяти.
    В Стиме сделано так, что эта инфа периодически отсылается на сервер, и там уже происходит подсчет времени.
    Ответ написан
    Комментировать
  • Как в python правильно взаимодействовать с БД?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Правильный способ - это пул соединений с БД и приложение соответствующее 12 факторам. Используемый вами подход не масштабируется и крайне ненадëжен.
    Ответ написан
    Комментировать
  • Как корректно отобразить данные из ini файла?

    HemulGM
    @HemulGM Куратор тега Python
    Delphi Developer, сис. админ
    Ini - стандартизированный формат. Для работы с ним есть готовые инструменты
    https://docs.python.org/3/library/configparser.html
    Ответ написан
    Комментировать
  • Почему утверждается, что int32_t имеет ширину точно 32 бита, если он является всего лишь псевдонимом int, который может быть больше 32 бит??

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Смотрите документацию. Там действительно утверждается, что int32_t должен иметь размер ровно 32 бита ("exactly").

    Где вы взяли, что int32_t - это псевдоним int?
    Подозреваю, что там, где вы это видели, куча #ifdef и проверок архитектуры.
    Возмножно, на вашей системе, где int итак имеет 32 бита так оно и есть. При компиляции на другую архитектуру внезапно может оказаться, что int32_t - нифига не псевдоним к int.
    Ответ написан
    3 комментария
  • Калькулятор C++ как убрать 1.33333e+06 подобные результаты вычисления?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Выводить в фиксированном виде:
    std::cout << std::fixed;  // Меняем формат вывода вещественных чисел 
    std::cout.precision(10);  // Сколько вы там хотите знаков после запятой выводить.
    double e = 1.3333e6;
    std::cout << e;  // 1333300.00000000000;
    Ответ написан
    1 комментарий
  • Калькулятор работает неисправно, как решить?

    YuriyVorobyov1333
    @YuriyVorobyov1333
    Software Developer
    Ну так a это int, а switch по char'ам, просто уберите одинарные кавычки и все заработает
    Ответ написан
    Комментировать
  • Стоит ли идти в Embedded разработку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Идти надо туда, чем интересно заниматься. Тем более, что в каждой области свои проблемы. У кровавого энтерпрайза может и красивые офисы на 37-м этаже, но из них тоже хочется выйти в окно. Как мне кажется, сейчас как раз такое время, когда спрос на железячников может сильно возрасти, а как следствие, и условия работы улучшатся.
    Ответ написан
    Комментировать
  • Берут ли вап вап?

    1. Просто при найме на работу не болтай о своих диагнозах - это создаст лишнее предвзятое отношение, которое тебе точно не нужно.
    Благо при найме на работу справку от врача предъявлять не нужно ;)

    "ПРЛ" и "ОКР" для не-психиатра - это непонятные слова и это ожидаемо, что люди тут ориентируются на стереотипы.

    2. Если умственной работе это не мешает, приступы в середине рабочего дня у тебя не происходят, конфликтов с коллегами на этой почве у тебя не (можешь себя контролировать, помогает медикаментозная/поведенческая терапия или просто очень слабо проявляется), то всё будет ок.
    Если вас что-то беспокоит - лучше проконсультируйтесь со специалистом, а не с родственниками/знакомыми.

    PS: есть среди родственников и знакомых люди с психическими расстройствами и могу сказать, что если они соблюдают все рекомендации врача и периодически наблюдаются - человек со стороны никогда не поймёт, что с ними что-то не так.
    Ответ написан
    Комментировать
  • Как можно передать структуру в printf, а к переменным её обращаться из шаблона?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Во встроенный printf вы это не добавите никак. Придется писать собственную обертку и там парсить строку формата.
    Так, чтобы это работало со всеми структурами, у которых есть член int a - нужны шаблоны, да. Гуглите variadic template, но это мрак и ужас. В любом случае это будет весьма громоздкий и непонятный код.

    Но раз уж у вас C++, то вы вместо printf используйте cout. Переопределите operator<< для ostream и вашей структуры и выводите через cout << *s1.

    Да, тут не получится в каждом конкретном месте вызова менять формат вывода, он будет одинаков везде - но так ли вам это нужно, чтобы городить костыли с printf?
    Ответ написан
    Комментировать
  • Почему не работает метод clone для класса Test1?

    @MarkusD Куратор тега C++
    все время мелю чепуху :)
    Типом результата Test::clone является std::shared_ptr<Test>.
    Строчка Test1 asd = v[1]->clone(); эквивалентна строчке Test1 asd = std::shared_ptr<Test>{ ... };.
    Оператора или конструктора преобразования из std::shared_ptr<Test> у типа Test1 нет. Трансляцию строчка Test1 asd = v[1]->clone(); не пройдет.

    Идиома Cloneable служит для того, чтобы позволить копирование действительных объектов не выходя за рамки общего интерфейса и не зная действительного типа клонируемого объекта.
    Или ты неправильно понял идиому, или пробуешь неправильно ее использовать.

    Когда ты заранее знаешь тип, тебе незачем пользоваться клонированием, потому что ты можешь просто скопировать стандартным способом.
    Правильно твоя строчка должна выглядеть так: std::shared_ptr<Test> asd = v[1]->clone();.
    Или так:
    Test1 asd{ *std::static_pointer_cast<Test1>( v[1] ) };
    .
    Ответ написан
    Комментировать
  • Смотрят ли на оценки в дипломе при устройстве на работу?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Я не смотрю. Оценка тем более не дипломная, а по дисциплине, отражает скорее не твое знание предмета, а отражение отношения препода к тебе на фоне знания предмета :)
    Если допустим у меня два кандидата после собесов - один лучше прошел собес, но у него хуже оценки, второй собес прошел хуже, но оценки у него лучше - возьму первого.
    Ответ написан
    Комментировать
  • Ошибка вывода списка C++?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    cout умеет сам по себе выводить только базовые типы: int, char, string, и т.д.

    Ошибка об этом и говорит, что никто не реализовал оператор << для списка.

    Если вы хотите выводить список, вам надо руками реализовать этот вывод. Циклом пройдитесь по всем элементам и выводите их, разделяя пробелами или чем вам там надо.

    еще можно перегрузить оператор << для списка, тогда код в main останется без изменения, но тот же самый цикл придется все равно написать в операторе.
    Ответ написан
    Комментировать
  • Что эффективней, чтение из файла или массив?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вопрос не глупый а вполне себе хороший.

    Его плавное развитие приводит к концепции баз данных. Самое главное что можно сказать тезисно это
    1) Пока памяти хватает (массив) - используй смело память
    2) Диск - больше и дешевле памяти
    3) С памятью работать легко. С диском - очень неудобно и надо обрабатывать IOExceptions почти всегда.
    Диски внезапно полны сюрпризов. Могут быть сетевыми дисками.
    4) Разные диски имеют скорость на порядки разную.
    5) Диски ведут себя очень плохо на random access. От этого даже метрика IOPS появилась.
    Ее очень любят обсуждать админы баз данных.
    6) Существуют структуры данных которые спецом создавались только для дисков (B+Tree)
    7) Диск - переживает выключение питания.
    8) Самые разумные решения - сочетают в себе и диск и память в тех частях кода где это нужно.
    9) Есть интерфейсы программирования которые виртуализирут диск как память. Этим пользуется
    SQLite например.
    10) Диск может достигать очень высокой последовательной скорости чтения или записи в файл
    при условии отсутствия конкурирующих записей в данный момент. Этим пользуются в БД
    для журналирования событий.

    В принципе если современный программист просто будет использовать только оперативную память
    то никто ему не сможет ударить по рукам или подойти с какой-то метрикой и чего-то там измерив
    сказать что он неправ. Тут уж только падения по OOM и потери информации и performance issues
    могут быть каким-то значимым аргументом.
    Ответ написан
    3 комментария
  • Какая временная сложность у простого алгоритма вычисления факториала (О большое)?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Линейная сложность и там и там.
    Ответ написан
    Комментировать