数学--数论--HDU1576 A / B(逆元)
2024-10-09 02:05:46
问题描述
要求(A / B)%9973,但由于A很大,我们只被告知n(n = A%9973)(我们给定的A必能被B整除,且gcd(B,9973)= 1)。
输入项
数据的第一行是一个T,表示有T组数据。
每组数据有两个数n(0 <= n <9973)和B(1 <= B <= 10 ^ 9)。
输出量
对应每组数据输出(A / B)%9973。
样本输入
2
1000 53
87 123456789
样本输出
7922
6060
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
typedef long long INT;
const INT p = 9973;
INT ex_gcd(INT a, INT b,INT &x, INT &y)
{
if(b == 0){
x = 1;
y = 0;
return a;
}
INT d = ex_gcd(b , a % b,x,y);
INT tmp =x;
x = y;
y = tmp - a / b * y;
return d;
}
int main()
{
int T;
cin >> T;
while(T --){
INT n, b,x,y;
cin >> n >> b;
ex_gcd(b, p,x,y);
cout << (x % p * n % p + p) % p << endl;
}
return 0;
}
最新文章
- JS图片上传预览
- .Net简单图片系统-使用说明
- Arraylist Vector Linkedlist区别和用法 (转)
- Servlet容器的启动过程
- Ubuntu使用apt-get安装本地deb包
- winform中WebBrowser控件执行脚本
- 对js中prototype的理解
- c# 数据库编程(利用DataSet 和 DataAdaper对象操作数据库--跨表操作)
- SetDlgItemText控件运行错误
- DeviceIoControl的使用说明
- Java课程寒假之回答问题:如何将你的兴趣化为可以立足于社会的资本
- 解决:安装SQL Server 2008 Native Client遇到错误(在Navicat premium新建sqlserver连接时 需要):An error occurred during ...HRESULT: 0x80070422(注意尾部的错误号)
- docker_天兔
- 2017-12-22 日语编程语言";抚子";-第三版实现初探
- CentOS上用Squid搭建HTTP代理小结
- python对word的操作
- Mvc_缓存浅谈
- LoRaWAN 1.1 网络协议规范 - 3 物理层帧格式
- 关于swagger-ui 参数为中文的时候,后端乱码
- 实现自己的ls命令