先将敌我阵群的马的速度进行排序,排序后从完全一一对应的情况开始扫,然后依次改换我方阵营顺序,直到比较出一种阵营可以战胜对方为止。
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int N;
while(cin>>N)
{
if(N==0)
break;
else
{
int a[1000],b[1000],i,j,p=0,flag=0;
for(i=0;i<N;i++)
cin>>a[i];
for(j=0;j<N;j++)
cin>>b[j];
sort(a,a+N);
sort(b,b+N);
while(p<N)
{
int count=0;
for(j=0;j<N;j++)
{
if(a[i]>b[j])
{
count++;
}
i++;
i=i%N;
}
if(count>N/2)
{
flag=1;
break;
}
else
{
i=0;
p++;
i=p;
}
}
if(flag)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
}
return 0;
}