Luogu P1650 田忌赛马
Posted cjoiershiina-mashiro
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Luogu P1650 田忌赛马相关的知识,希望对你有一定的参考价值。
题目
如果我们最大比对面最大大,那么直接用。
如果我们最小比对面最小大,那么直接用。
否则用我们最小去换对面最大。
#include<bits/stdc++.h>
using namespace std;
inline int read()
register int x=0;
register char c=getchar();
while(c>'9'||c<'0')
c=getchar();
while(c>='0'&&c<='9')
x=(x<<3)+(x<<1)+(c^48),c=getchar();
return x;
int a[10001],b[10001],n,ans,hda,tla,hdb,tlb;
bool aa[10001],bb[10001];
int main()
n=read();
int ans=0;
for(int i=1;i<=n;i++)
a[i]=read();
for(int i=1;i<=n;i++)
b[i]=read();
sort(a+1,a+n+1);
sort(b+1,b+n+1);
hda=1,hdb=1,tla=n,tlb=n;
while(n--)
if(a[tla]>b[tlb])
ans+=200,tla--,tlb--;
else
if(a[hda]>b[hdb])
ans+=200,hda++,hdb++;
else
if(a[hda]<b[tlb])
ans-=200,hda++,tlb--;
cout<<ans;
return 0;
以上是关于Luogu P1650 田忌赛马的主要内容,如果未能解决你的问题,请参考以下文章