CF1996D 题解
Manki23333333 · · 题解
由于 Rating 非常低,来打 div3 了。
题意
给定
题解
考虑暴力枚举。复杂度
但是我们发现,它有一个单调性。当我们固定了
但是我们优化了一个
证明
枚举
代码
#include <bits/stdc++.h>
using namespace std;
int n, x;
void solve () {
cin >> n >> x;
int ans = 0;
for (int a = 1 ; a <= x ; a ++) {
for (int b = 1 ; b <= x && a * b <= n ; b ++) {
if (a * b >= n || (a + b) >= x || (n - a * b) < (a + b))
continue;
ans += min (x - a - b, (n - a * b) / (a + b));
}
}
cout << ans << endl;
}
int main () {
int T;
cin >> T;
while (T --) {
solve ();
}
return 0;
}