• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
JQK
博客园    首页    新随笔    联系   管理    订阅  订阅
【Q】【POJ 1061】【POJ 2142】【POJ 2891】

扩展欧几里德定理,参考http://www.cnblogs.com/ka200812/archive/2011/09/02/2164404.html,顺便现学现卖。

扩展欧几里得定理:对于两个不全为0的整数a、b,必存在一组解x,y,使得ax+by==gcd(a,b);

其中求gcd的代码模板:

View Code
long long xx,yy;

long long gcd(long long a,long long b)
{
long long ans,tmp;
if(b==0){
xx=1;
yy=0;
return a;
}
ans=gcd(b,a%b);
tmp=xx;
xx=yy;
yy=tmp-(a/b)*yy;
return ans;
}

然后求的xx,yy的通解:假设d=gcd(a,b).  那么 xx=x+b/d*t; yy=y-a/d*t;  其中t为任意常整数。

 

对于最后一道poj2891中用到的最后一个公式,还没推导明白。复制过来,待后续理解。t=(xx*tmp/ans%(aa/ans)+(aa/ans))%(aa/ans);(个人认为是自己写乱了。。。)

中国剩余定理:

中国剩余定理
设m1,m2,...,mk是两两互素的正整数,即gcd(mi, mj) =1, i≠j, i,j = 1,2,...,k
  则同余方程组:
  x≡b1 (mod m1)
  x≡b2 (mod m2)
  ...
  x≡bk (mod mk)
  模[m1,m2,...,mk]有唯一解,即在[m1,m2,...,mk]的意义下,存在唯一的x,满足:
  x≡bi mod [m1,m2,...,mk], i = 1,2,...,k




posted on 2012-02-16 23:23  仨woman  阅读(319)  评论(1)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3