60分求调
查看原帖
60分求调
1066381
Eternal_rainbow楼主2025/8/3 14:09
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int k;
int main()
{
	cin >> k;
	while(k--)
	{
		ll n,d,e,num1,num2;
		cin >> n >> d >> e;
		num1 = n - e * d + 2;
		num2 = sqrt(pow(n - e * d + 2,2) - 4 * n);
		ll p = (num1 + num2) / 2;
		ll q = (num2 - num1) / 2;
		if (p * q == n && e * d == (p - 1) * (q - 1) + 1)
		{
			cout << min(p,q) << " " << max(p,q) << endl;
		}
		else
		{
			cout << "NO" << endl;
		}
	}
	return 0;
}

2025/8/3 14:09
加载中...