帮忙估个分!
查看原帖
帮忙估个分!
535491
newbie_QwQ楼主2022/3/26 21:25

就是考场上口胡了一个歪解,但是改了改之后把4个样例都A掉了,好像有希望的样子。求大佬看看能胡多少分!(前三个比较有依据的会给关注!)

#include<algorithm>
#include<iostream>
#include<cstdio>
#include<cmath>
#include<map>
using namespace std;
int main()
{
	freopen("math.in","r",stdin);
	freopen("math.out","w",stdout);
	long long m,n,i,j,t,x,z,k,y,yy,f;
	scanf("%lld",&t);
	for(i=1;i<=t;i++)
	{
		scanf("%lld %lld",&x,&z);
		y=((z/x)/__gcd(x,(z/x)));
		if(x*y*__gcd(x,y)==z)
		{
			printf("%lld\n",y);
		}
		else
		{ 
			f=0;
			for(j=2;j<=150;j++)
			{
				yy=y*j;
				if(x*yy*__gcd(x,yy)==z)
				{
					printf("%lld\n",yy);
					f=1;
					break;
				}
			}
			if(f==0) printf("-1\n");
		} 
	}
	return 0;
}

求求你们啦!

2022/3/26 21:25
加载中...