首先这是一个数学题

题目分析
1.鸽子可以进行k次偶数与奇数次攻击,我们先把都看成最小奇数与偶数的攻击,最小的奇数是1,最小的偶数是2,如果最小的攻击之和都不能击败boss,那么就输出NO,这是一个大的判断
2.其次,如果最小的攻击之和能大于boss的血量值,那么继续判断,因为奇数的偶数倍一定是偶数,奇数的奇数倍一定是奇数,偶数可以不用管,所以我们只需判断boss的血量值是否与k是同一类型的数,如果是,那么就可以击败boss,如果不行,那么就不可以

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
    ll t;
    ll n, m;
    scanf("%d", &t);
    while (t--)
    {
        scanf("%lld%lld", &n, &m);
        if (m * 3 <= n)
        {
            int boolean = m % 2;
            int boolean1 = n % 2;
            if (boolean == boolean1)
                printf("Yes\n");
            else
                printf("No\n");
        }
        else
        {
            printf("No\n");
        }
    }
    return 0;
}