田忌赛马
#include<stdio.h>
#include<algorithm>
using namespace std;
const int M = 1000;
int main(void)
{
int n;
while(~scanf("%d",&n)&&n)
{
int t=0,a[M]={0},b[M]={0};
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n);
for(int i=0;i<n;i++)
scanf("%d",&b[i]);
sort(b,b+n);
for(int i1=0,i2=0,j1=n-1,j2=n-1;i1<=j1&&i2<=j2;)
{
if(a[i1]>b[i2]) //田忌的慢马比齐王的慢马 快的话 直接比掉
{
t++;
i1++;
i2++;
}
else if(a[i1]==b[i2]) //田忌的慢马比齐王的慢马 一样的话
{
if(a[j1]>b[j2]) //田忌的快马比齐王的快马 快的话(快马消耗一波)
{
j1--;
j2--;
t++;
//注意在这一环节i1,i2不变,下次还会相同
}
else //这里快马一样的情况为什么放一起讨论 (我也不知道,呵呵,自己找找例子看看,比如,2 2 3 3,2 3 3 3)
{
if(a[i1]<b[j2]) //这里还是要比一下的,万一相同了呢
t--;
i1++;
j2--;
}
}
//田忌的慢马比齐王的慢马 慢的话 用田忌的慢马消耗齐王的快马(田忌的慢马 反正都是输,不如消耗一波)
else
{
if(a[i1]<b[j2]) //这里还是要比一下的,万一相同了呢
t--;
i1++;
j2--;
}
}
printf("%d\n",t*200);
}
return 0;
}