怎么判断TOO MANY呀
查看原帖
怎么判断TOO MANY呀
1139105
xmbc楼主2024/1/12 14:32

我答了90分,差3#数据TOO MANY 我的思路是一开始分子是0,分母是1,然后向上罗列就好了,m+n的复杂度不会超时,但怎么判断TOO MANY呀?我尝试了好几种方案都不行

#include<iostream>
using namespace std;
int main()
{
	int m,n,i;
	long long k=0,l=1,a,b;
	long double r,t,u=1e308;
	bool x=false;
	scanf("%d%d%llf",&m,&n,&r);
	while(k<=m && l<=n)
	{
		t=1.0*k/l;
		if(t>r)
		{
			if(t-r<u)
			{
				u=t-r;
				a=k;
				b=l;
			}
			l++;
		}
		else
		{
			if(r-t<u)
			{
				u=r-t;
				a=k;
				b=l;
			}
			k++;
		}
	}
	if(x)
		printf("TOO MANY");
	else
		printf("%lld/%lld",a,b);
	return 0;
}
2024/1/12 14:32
加载中...