C++ 数论相关题目 扩展欧几里得算法(裴蜀定理)

给定 n
对正整数 ai,bi
,对于每对数,求出一组 xi,yi
,使其满足 ai×xi+bi×yi=gcd(ai,bi)

输入格式
第一行包含整数 n

接下来 n
行,每行包含两个整数 ai,bi

输出格式
输出共 n
行,对于每组 ai,bi
,求出一组满足条件的 xi,yi
,每组结果占一行。

本题答案不唯一,输出任意满足条件的 xi,yi
均可。

数据范围
1≤n≤105
,
1≤ai,bi≤2×109
输入样例:
2
4 6
8 18
输出样例:
-1 1
-2 1
在这里插入图片描述
没什么好说的,理解公式背模板!

#include <iostream>using namespace std;int n;int exgcd(int a, int b, int &x, int &y)
{if(!b) //边界情况,b=0{x = 1, y = 0; //求系数return a;}int d = exgcd(b, a % b, y, x); // 递归求最大公约数,求的是by+ax,换下xy的位置。y -= a / b * x;return d;
}int main ()
{cin >> n;while(n -- ){int a, b, x, y;cin >> a >> b;exgcd(a, b, x, y);cout << x << ' ' << y << endl;}return 0;}

输入输出比较多的情况下,可以用scanf和printf节省时间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438371.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多只动物3D姿态估计与行为识别系统

动物社会行为的量化是动物科学研究的重要步骤。虽然现有的深度学习方法已经实现了对常见动物的精确姿态估计、识别和行为分类&#xff0c;但由于缺乏注释良好的数据集&#xff0c;其应用依然受到挑战。因此该研究展示了一个计算框架&#xff0c;即社会行为图谱&#xff08;SBeA…

MkDocs 部署指南

简介 MkDocs 可以同时编译多个 markdown 文件&#xff0c;形成书籍一样的文件。有多种主题供你选择&#xff0c;很适合项目使用。 MkDocs 是快速&#xff0c;简单和华丽的静态网站生成器&#xff0c;可以构建项目文档。文档源文件在 Markdown 编写&#xff0c;使用单个 YAML …

大数据StarRocks(八):资源隔离实战

前言 自 2.2 版本起&#xff0c;StarRocks 支持资源组管理&#xff0c;集群可以通过设置资源组&#xff08;Resource Group&#xff09;的方式限制查询对资源的消耗&#xff0c;实现多租户之间的资源隔离与合理利用。在 2.3 版本中&#xff0c;StarRocks 支持限制大查询&#…

qt5-入门

参考&#xff1a; qt学习指南 Qt5和Qt6的区别-CSDN博客 Qt 学习之路_w3cschool Qt教程&#xff0c;Qt5编程入门教程&#xff08;非常详细&#xff09; 本地环境&#xff1a; win10专业版&#xff0c;64位 技术选择 Qt5力推QML界面编程。QML类似HTML&#xff0c;可以借助CSS进…

LabVIEW机械臂轨迹跟踪控制

介绍了一个使用LabVIEW开发的机械臂轨迹跟踪控制系统。该系统的主要目标是实现对机械臂运动轨迹的精确控制&#xff0c;使其能够按照预定路径进行精确移动。此系统特别适用于需要高精度位置控制的场合&#xff0c;如自动化装配、精密操作等。 为了实现LabVIEW环境下的机械臂轨迹…

React 组件生命周期-概述、生命周期钩子函数 - 挂载时、生命周期钩子函数 - 更新时、生命周期钩子函数 - 卸载时

React 组件生命周期-概述 学习目标&#xff1a; 能够说出组件的生命周期一共几个阶段 组件的生命周期是指组件从被创建到挂在到页面中运行&#xff0c;在到组件不用时卸载组件 注意&#xff1a;只有类组件才有生命周期&#xff0c;函数组件没有生命周期(类组件需要实例化&…

2024最新版IntelliJ IDEA安装使用指南

2024最新版IntelliJ IDEA安装使用指南 Installation and Usage Guide to the Latest JetBrains IntelliJ IDEA Community Editionn in 2024 By JacksonML JetBrains公司开发的IntelliJ IDEA一经问世&#xff0c;就受到全球Java/Kotlin开发者的热捧。这款集成开发环境&#xf…

C#,数据检索算法之插值搜索(Interpolation Search)的源代码

数据检索算法是指从数据集合&#xff08;数组、表、哈希表等&#xff09;中检索指定的数据项。 数据检索算法是所有算法的基础算法之一。 本文提供插值搜索&#xff08;Interpolation Search&#xff09;的源代码。 1 文本格式 using System; namespace Legalsoft.Truffer.…

Linux实验记录:使用LVM(逻辑卷管理器)

前言&#xff1a; 本文是一篇关于Linux系统初学者的实验记录。 参考书籍&#xff1a;《Linux就该这么学》 实验环境&#xff1a; VmwareWorkStation 17——虚拟机软件 RedHatEnterpriseLinux[RHEL]8——红帽操作系统 备注&#xff1a; 硬盘分好区或者部署为RAID磁盘阵列…

Java多线程--同步机制解决线程安全问题方式一:同步代码块

文章目录 一、介绍二、原理三、同步锁机制&#xff08;1&#xff09;synchronized的锁是什么&#xff08;2&#xff09;同步操作的思考顺序&#xff08;3&#xff09;代码演示 四、同步代码块&#xff08;1&#xff09;同步代码块--案例11、案例12、分析同步原理3、案例1之this…

堆和堆排序【数据结构】

目录 一、堆1. 堆的存储定义2. 初始化堆3. 销毁堆4. 堆的插入向上调整算法 5. 堆的删除向下调整算法 6. 获取堆顶数据7. 获取堆的数据个数8. 堆的判空 二、Gif演示三、 堆排序1. 堆排序(1) 建大堆(2) 排序 2.Topk问题 四、完整代码1.堆的代码Heap.cHeap.htest.c 2. 堆排序的代码…

Ubuntu本地部署Nextcloud并结合内网穿透实现远程访问搭建个人云盘

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 摘要1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访…