思路
因为对于每个 ai+bi 都要满足 <=x 这个条件
我们只需要贪心的 使得每个和尽可能的小即可
所以对两个数组 按升序 和 降序 sort 一下即可
CODE
#include <bits/stdc++.h>
using namespace std;
const int N = 110;
int a[N],b[N],n,x;
bool cmp(int x,int y)
{
return x>y;
}
void sovle()
{
cin>>n>>x;
for(int i = 1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
cin>>b[i];
sort(a+1,a+1+n);
sort(b+1,b+1+n,cmp);
for(int i=1;i<=n;i++)
{
if(a[i]+b[i]>x)
{
cout<<"No"<<endl;
return;
}
}
cout<<"Yes"<<endl;
}
int main()
{
ios::sync_with_stdio(false);
int t;
cin>>t;
while(t -- )
sovle();
return 0;
}