rt.
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n, m, e, d, x;
ll Chtholly, Nephren, Ithea;
ll func(ll l, ll r) {
ll mid = (l + r) / 2ll, mid2 = (l + r) / 2ll;
while (l < r) {
mid = (l + r) / 2ll;
mid2 = mid - 1ll;
if (mid2 * (m - mid2) == n) return mid2;
mid2 = mid + 1ll;
if (mid2 * (m - mid2) == n) return mid2;
if (mid * (m - mid) == n) return mid;
else if (mid * (m - mid) < n) l = mid + 1ll;
else if (mid * (m - mid) > n) r = mid - 1ll;
// printf("%lld %lld %lld %lld %lld %lld\n",mid,l,r,m-mid,mid*(m-mid),n);
}
return -1ll;
}
int main() {
// freopen ("decode.in", "r", stdin);
// freopen ("decode.out", "w", stdout);
int T;
scanf ("%d", &T);
while (T--) {
scanf ("%lld%lld%lld", &n, &e, &d);
m = n - e * d + 2ll;
bool flg = false;
x = func(1ll, m / 2ll + 1ll);
if (x == -1ll) printf ("NO\n");
else printf ("%lld %lld\n", x, m - x);
}
}
顺便问下 zj 2= 分数线 200 pts 可信吗