Способы для умножения модуля с примитивными типамиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Способы для умножения модуля с примитивными типами

Сообщение Anonymous »

Есть ли способ построить, например, (853467 * 21660421200929) % 100000000000007 < /code> Без библиотек BigInteger (обратите внимание, что каждое число вписывается в 64-битное целое число, но результат умножения не является)?int64_t mulmod(int64_t a, int64_t b, int64_t m) {
if (b < a)
std::swap(a, b);
int64_t res = 0;
for (int64_t i = 0; i < a; i++) {
res += b;
res %= m;
}
return res;
}


Подробнее здесь: https://stackoverflow.com/questions/121 ... tive-types
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»