杭电2669
给a,b求Xa Yb = 1.如果没有则输出sorry。
可以通过拓展欧几里得指导Xa Yb = gcd(a,b).
不言而喻要判断gcd(a,b)是否等于1.如果不等于1,那么就是sorry。如果等于一,那么还不能让x小于0,要对x,y进行加减操作满足x>0;拓展欧几里得是通过递归从下往上进行运算。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.StreamTokenizer;/** 拓展欧几里得*/
public class hdu2669 {static long x=0;static long y=0;public static void main(String[] args) throws IOException {// TODO 自动生成的方法存根StreamTokenizer in=new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));while(in.nextToken()!=StreamTokenizer.TT_EOF){long a=(long)in.nval;in.nextToken();long b=(long)in.nval;long q=tgcd(a,b);if(1%q!=0) {out.println("sorry");}//gcd要和要求相等(这里等于1)else {while(x<=0){//x*a y*b=1 要求x>0这样并且要求x最小,那么这样操作就相当于 ab-ab操作。刚开始还没明白x =b;y-=a;}out.println(x " " y);}//out.flush();}        }static long tgcd(long a,long b){if(b==0) {x=1;y=0;return a;}long ans=tgcd(b,a%b);long team=x;x=y;y=team-a/b*y;return ans;}
}

杭电2669拓展欧几里得相关推荐

  1. poj1061-青蛙的约会(拓展欧几里得java)

    题目: 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问清楚 ...

  2. 拓展欧几里得模板/求逆元模板(java)

    拓展欧几里得模板 参考:哈尔滨理工大学ACM培训资料汇编/ACM-ICPC培训资料汇编* 基本原理 :设 a 和 b 不全为 0,则存在整数 x,y 使得 xa yb=gcd(a,b)=c 对于辗转相 ...

  3. A/B HDU - 1576 (逆元或拓展欧几里得或数学公式)多解法求大数结果

    题意:求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973)(我们给定的A必能被B整除,且gcd(B,9973) = 1). 思维:(1)逆元+扩展欧几里得算法:满足a*k≡1 (mo ...

  4. 拓展欧几里得小结(初级理解)

    什么是拓展欧几里得?简单的说,就是求关于x,y的方程 ax + by = gcd(a,b) 的所有整数解 现在我们令g = gcd(a,b)则方程变成了ax + by = g 假如我们现在知道了关于这 ...

  5. 拓展欧几里得 [Noi2002]Savage

    对于一个野人,他(她?)所在的位置,(C[i]+x*p[i])%ans,是的,暴力枚举每一个ans,用拓展欧几里得求出每两个wildpeople(wildrage?)相遇的年份,如果小于最小的寿限(就 ...

  6. AcWing 878. 线性同余方程(拓展欧几里得)

    题目链接 https://www.acwing.com/problem/content/880/ 思路 ai×xi≡bi(modmi)a_i\times x_i≡b_i(mod \ m_i)ai​×x ...

  7. 数学--数论--欧几里得定理和拓展欧几里得定理

    欧几里得定理: gcd(a, b) = gcd(b, a%b) 证明: 我们首先约定:m = gcd(a,b) , n = gcd(b, q) , a = b*p +q.(这里的gcd含义跟上面一样, ...

  8. POJ1061青蛙的约会(拓展欧几里得)

    青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 146847 Accepted: 34169 Description ...

  9. 从欧几里得到拓展欧几里得

    欧几里得定理: 公式表述 gcd(a,b)=gcd(b,a mod b) 证明:a可以表示成a = kb + r,则r = a mod b 假设d是a,b的一个 公约数,则有 d|a, d|b,而r ...

最新文章

  1. 2018-3-27 专家系统
  2. hive导入导出数据案例
  3. Jedis工具类(含分布式锁的调用和释放)
  4. android layout 工具栏,没有工具栏的Android CollapsingToolbarLayout在某个点停止而不是完全关闭...
  5. input输入框的各种事件
  6. tensor转list_tensorflow中ckpt转pb
  7. 使用高性能Pipelines构建.NET通讯程序
  8. python线性加权模型_局部加权之线性回归(1) - Python实现
  9. 一位工作了10年的C++程序员总结出这些忠告
  10. java下载进度怎样判断_Java获得下载进度
  11. 坐标轨迹计算_工业机器人工具坐标系和用户坐标系的区别与联系
  12. window 创建python虚拟环境
  13. Java JDK 自带监控工具 jps.exe、jconsole.exe、jvisualvm.exe
  14. LoadRunner11下载、安装与破解
  15. chm打不开解决办法
  16. 小韦老师@神犇营-my1063-引爆炸弹
  17. 屎上最详细最生动的TFT液晶显示屏原理介绍
  18. 解决Python无法找到入口——无法定位到程序输入点
  19. OpenCV实现SfM(四):Bundle Adjustment
  20. 小说网站源码开源,支持爬虫和原创双模式,小说自动采集/更新/纠错

热门文章

  1. C++ Primer 5th笔记(chap 15 OOP)访问控制与继承
  2. [力扣leetcode39]组合总和及回溯法
  3. 剑指 Offer 52. 两个链表的第一个公共节点(C语言)
  4. 【安全漏洞】Struts2漏洞集合总结
  5. 160个Crackme038之P-Code初窥门径
  6. 【PHP】IPv4与整数转换、IPv6与整数转换
  7. 简单的石头剪刀布(机器胜率略高)
  8. 寒假每日一题(入门组)【week2 完结】
  9. Acwing第 35 场周赛【完结】
  10. 力扣 136. 只出现一次的数字 【异或运算】