题目描述:你有个2n的方格区域,第一行有k1个白块,第二行有k2个白块,其余全部为黑块。
现在有w个2×1的白的多米诺骨牌和b个黑的骨牌,问能不能将它们全部放在各自对应的颜色块上且彼此不重叠?

设第一行有x1个白,第二行有x2个白,一定能找到一种方法,放下至多(x1+x2)/2块白的骨牌,黑同理。
黑白都判断一下即可。

#include<bits/stdc++.h>
#define ll long long
using namespace std;
inline ll read()
{
    ll a;
    cin>>a;
    return a;
}
int main()
{
    //ios::sync_with_stdio(false);
    //cin.tie(0);cout.tie(0);
    int t;
    t=read();
    while(t--)
    {
        int n,k1,k2,w,b;
        n=read();k1=read();k2=read();
        w=read();b=read();
        int flag=1;
        if(w*2>k1+k2) flag=0;
        if(b*2>2*n-k1-k2) flag=0;
        if(flag) cout<<"YES\n";
        else cout<<"NO\n";
    }
    return 0;
}