...
题意:
有 k 个不同的奇数,问最后是否有可能和为 n。
首先必须 n,k 奇偶相同,这个我们很容易就能理解。然后就是 k 个奇数相加最小值大于 n 肯定不能组成,他们的和由等差公式求得为 k+k∗(k−1)
AC代码:
ll n, m, k;
int ans, res, tmp;
int main()
{
int t;
sd(t);
while (t--)
{
sldd(n, k);
if ((n & 1) != (k & 1))
puts("NO");
else if ((n - k) >= (k * (k - 1)))
puts("YES");
else
puts("NO");
}
return 0;
}