Ball Ask
查看原帖
Ball Ask
112631
Lovable_Wind楼主2021/8/17 22:03
#include<bits/stdc++.h>
using namespace std;
const double pi=3.14;
const int inf=0x3f3f3f3f;
const int NIL=-1;
#define f(i,l,r) for(int i=l;i<=r;i++)
long long n,m,p,q,l,x1,yy1,aa,bb,d;
long long ExO(long long a,long long b,long long &x,long long &y){
	long long r,x0,y0;
	if (b==0){
		x=1;
		y=0;
		return a; 
	}
	r=ExO(b,a%b,x0,y0);
	x=y0,y=x0-a/b*y0;
	return r;
} 
int read()
{
    int ans=0,flag=1;
    char ch=getchar();
    while( (ch>'9' || ch<'0') && ch!='-' ) ch=getchar();
    if(ch=='-') flag=-1,ch=getchar();
    while(ch>='0' && ch<='9') ans=ans*10+ch-'0',ch=getchar();
    return ans*flag;
}
int main()
{
	//freopen(".in","r",stdin);
	//freopen(".out","w",stdout);
	cin>>n>>m>>p>>q>>l; 
	aa=n-m;
	bb=q-p;//////////////看这里!!!
	if (bb<0){
		aa=-aa,bb=-bb;
	}
	/*//GODNESS COMES!//*/
	d=ExO(bb,l,x1,yy1);
	if (aa%d!=0){
		cout<<"Impossible"<<endl;
	}else{
		cout<<((x1*(aa/d))%(l/d)+(l/d))%(l/d)<<endl;
	}
}

在第35行修改bb时,如果调换p,q位置就会AC,否则像现在就会WA,求问是为什么,还有将aa,bb取反的意义还是不很明白啊/kk

2021/8/17 22:03
加载中...