poj 1061 青蛙的约会 数论 线性同余

来源:互联网 发布:php防止ddos攻击代码 编辑:程序博客网 时间:2024/06/02 23:20

#include<iostream>
using namespace std;

__int64 gcdex(__int64 a,__int64 b,__int64 &x,__int64 &y)
{
 
 if(b==0)
 {
   x=1;
    y=0;
  return a;
 }
 __int64 d=gcdex(b,a%b,x,y);
 __int64 t=x;
 x=y;
 y=t-a/b*y;
 return d;
}

 


int main()
{
          __int64 x,y,m,n,l,d,a,b;
           scanf("%I64d%I64d%I64d%I64d%I64d",&x,&y,&m,&n,&l);
  
            m=m%l;n=n%l;


            if(m==n)
                    cout<<"Impossible"<<endl;
            else
              {
                    __int64 p=n-m,q=x-y;
                     if(p<0)
                    {
                              p=-p;
                             q=-q;
                    }
                 d=gcdex(p,l,a,b);
                 if(q%d!=0)
                 cout<<"Impossible"<<endl;
              else
                {
                   __int64 c=q/d*a;
                    c=(c%l+l)%l;
                      printf("%I64d/n",c);
                   }
           }
  return 0;
}

原创粉丝点击