E题某个样例没过

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define endl '\n'

const int  INF=0x3f3f3f3f;
const int MOD=998244353;
const int MAX_SIZE=6e5+10;
//map NO. to id
const int N=1e4+5;



void solve(){

	
	ll a,b;
	cin>>a>>b;
	if(__gcd(a,b)!=1){
		
		cout<<0<<endl;
		return;
	}
	if(a<b)swap(a,b);
	//gcd(a+c,b+c)=gcd(a+c,a-b)
	//count the factor of a-b;
	ll c=a-b;
	if(c==1||a+b==2){
		
		cout<<-1<<endl;
		return;
	}
	vector<ll>fac;
	for(ll i=2;i<=pow(c,0.5);i++){
		
		if(c%i==0){
			
			fac.push_back(i);
			fac.push_back(c/i);
		}
	} 
	fac.push_back(c);
	ll ans=1e18;
	for(auto &v:fac){
		
		ll tmp=a%v;
		if(tmp==0) {
			ans=0;
			break;
		}
		ans=min(v-tmp,ans);
		
	}
	cout<<ans<<endl;
}


int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  
 int t=1;
  //cin>>t;
  while(t--)solve();
  
}

全部评论
1 1输出1
点赞 回复 分享
发布于 2023-04-21 21:10 广东
请大家帮忙看看哪里出问题了?感谢!
点赞 回复 分享
发布于 2023-04-21 21:09 湖北

相关推荐

家人们这个评估还要多久啊
投递小米集团等公司10个岗位
点赞 评论 收藏
分享
no_work_no...:大专三年最辛苦的应该是手机和电脑了吧
点赞 评论 收藏
分享
07-24 03:49
门头沟学院 Java
点赞 评论 收藏
分享
08-27 14:30
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务