样例过不了 40pts WA 求助
查看原帖
样例过不了 40pts WA 求助
857323
linxuanrui楼主2023/6/19 22:46
#pragma GCC optmize(2,3,"Ofast","inline")
#include<bits/stdc++.h>
#define endl '\n'
typedef long long ll;
#define int long long
using namespace std;
int m,n;
double x;
signed main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin >> m >> n >> x;
	int lm = 0,rm = 1,ln = 1,rn = 0;
	while(1){
		int midm = lm + rm,midn = ln + rn;
		midm /= __gcd(midm,midn),midn /= __gcd(midm,midn);
		if(midm > m || midn > n)break;
		if(midm * 1.0000 / midn < x)lm = midm,ln = midn;
		else if(midm * 1.0000 / midn == x)break;
		else rm = midm,rn = midn;
	}
	cout << lm << "/" << ln;
}

注:这里还没有判断 TOO MANY 的问题,待会我自己加上即可。

2023/6/19 22:46
加载中...