当前位置: 首页 > news >正文

Acwing.877 扩展欧几里得算法

题目

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

输入格式

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

输出格式

输出共n行,对于每组ai, bi,求出一组满足条件的axi, Ji,每组结果占一行。本题答案不唯一,输出任意满足条件的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 exgcd(int a,int b,int &x, int &y)
{if (!b){	x = 1, y = 0;return a;		}int d = exgcd(b,a % b, y, x);y -= a / b * x;return d;
}	
int main( )
{int n;scanf("%d",&n);while (n -- ){int a, b, x,y;scanf("%d%d", &a,&b);exgcd(a,b,x,y);printf("%d %d\n", x, y);}	return 0;

思路

在欧几里得算法的基础上进行公式推导
具体推导如下图
在这里插入图片描述

http://www.lryc.cn/news/112687.html

相关文章:

  • 基于自组织竞争网络的患者癌症发病预测(matlab代码)
  • golang mongodb
  • docker中的jenkins去配置sonarQube
  • 企业如何实现自己的AI垂直大模型
  • Maven可选依赖和排除依赖简单使用
  • “深入探索JVM:Java虚拟机的工作原理解析“
  • Prometheus-各种exporter
  • 小程序的 weiui的使用以及引入
  • git目录初始化,并拉取最新代码
  • 运筹调度算法工程式招聘情况:技能要求、薪资、工作地
  • css2-BFC是什么?
  • Flutter Dart语言(04)库操作
  • 通向架构师的道路之漫谈使用ThreadLocal改进你的层次的划分
  • springboot全局统一返回处理
  • C/C++面试经历(一)
  • 【PostgreSQL】系列之 一 用户创建和授权(三)
  • Python连接Hive实例教程
  • Jest和Mocha对比:两者之间有哪些区别?
  • Oracle:merge into用法
  • 【数据结构OJ题】消失的数字
  • linux 隔离内核
  • IO学习-有名管道
  • 小研究 - 基于 SpringBoot 微服务架构下前后端分离的 MVVM 模型(三)
  • 应用在多媒体手机中的低功率立体声编解码器
  • Teams Room视频会议室方案
  • C# 委托、事件、特性程序
  • MapTR论文笔记
  • JS进阶-Day4
  • 【C语言】初阶完结练习题
  • c++类与对象详解