扩展欧几里得
文章平均质量分 65
紫杉丶
这个作者很懒,什么都没留下…
展开
-
扩展欧几里得
首先、扩展欧几里得定理:对于两个不全为0的整数a、b,必存在一组解x,y,使得ax+by==gcd(a,b); 实现如下: int exgcd(int a,int b) { int t,d; if(b==0) { x=1; y=0; //注释1 return a; } d=gcd(b,a%b);原创 2015-03-31 22:12:05 · 381 阅读 · 0 评论 -
POJ 2142 The Balance(exgcd应用)
有一种天平,这种天平只有两种重量的砝码a和b,现在要称出重量为c的物品,问你至少需要多少a和b,答案需要满足a的数量加上b的数量和最小,并且他们的重量和也要最小。(两个盘都可以放砝码) 分析: 这题我刚刚开始还以为是动规或者bfs,也算是碰了一鼻子的灰吧。 假设a砝码我们用了x个,b砝码我们用了y个。那么天平平衡时,就应该满足ax+by==c。x,y为正时表示放在和c物品的另一边,为负时表原创 2015-03-31 22:07:27 · 416 阅读 · 0 评论 -
CodeForces 7C Line (扩展欧几里得)
前面忘记修改gcd,一直求不出来。。。套套模板轻松水,, #include "string" #include "iostream" #include "cstdio" #include "cmath" #include "set" #include "queue" #include "vector" #include "cctype"原创 2015-04-02 22:33:02 · 376 阅读 · 0 评论