洛谷 P10446 64位整数乘法-普及-
题目描述
求 aaa 乘 bbb 对 ppp 取模的值。
输入格式
第一行输入整数 aaa,第二行输入整数 bbb,第三行输入整数 ppp。
输出格式
输出一个整数,表示 a*b mod p
的值。
输入输出样例 #1
输入 #1
3
4
5
输出 #1
2
说明/提示
1≤a,b,p≤10181 \le a,b,p \le 10^{18}1≤a,b,p≤1018
solution
用__int128 偷懒的做法
其实本题可以用快速积来做
代码
#include <iostream>
#include "bit"
#include "vector"
#include "unordered_set"
#include "unordered_map"
#include "set"
#include "queue"
#include "algorithm"
#include "bitset"
#include "cstring"
#include "cmath"using namespace std;long long a, b, p;int main() {cin >> a >> b >> p;__int128 x = a, y = b;long long z = x * y % p;cout << z;
}