标签:
3 92 83 71 95 87 74 2 20 20 20 20 2 20 19 22 18
200 0 0
#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int n;
int a[1010],b[1010];//a是自己的马
while(~scanf("%d",&n))
{
for(int i=0;i<n;++i)
scanf("%d",a+i);
for(int i=0;i<n;++i)
scanf("%d",b+i);
sort(b,b+n);
sort(a,a+n);
int cnt=1;//记录比赛的次数
int i=0,j=0;
int n1=n-1,n2=n-1;
int sum=0;
while(cnt++<=n)//比n场
{
if(a[i]>b[j])
{
sum+=200;
i++;
j++;
}
else if(a[i]<b[j])//反正也是输,和最强的那个打
{
sum-=200;
i++;
n2--;
}
else //相等的时候
{
if(a[n1]>b[n2])//判断头
{
sum+=200;
n1--;
n2--;
}
else //当当前最强小于等于别人的,就把最弱的马和他比,因为这时自己最强还有可能赢,就更贪心
{
if(a[i]<b[n2])//这里存在自己最大的和最小的都与对方最大的相同就不需要减200了
{
sum-=200;
i++;
n2--;
}
}
}
}
printf("%d\n",sum);
}
return 0;
}
/*
8
11 9 8 8 8 4 3 2
11 8 8 8 8 4 3 2
*/版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/yuzhiwei1995/article/details/47364151