建议加强数据
查看原帖
建议加强数据
436373
yanshenshizu楼主2021/7/16 18:38

如题,贪心写错了然后....AC

#include <bits/stdc++.h>
using namespace std;
int n;
int king[2005],tian[2005];
int main()
{
	int res=0;
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&tian[i]);
	}
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&king[i]);
	}
	sort(tian+1,tian+n+1);sort(king+1,king+n+1);
	int tt=n,tk=n,ht=1,hk=1;
	for(int i=1;i<=n;i++)
	{
		if(tian[tt]>king[tk])
		{
			tt--;tk--;res+=200;
		}
		else if(tian[tt]<king[tk])
		{
			res-=200;
			tt--;
			hk++;
		}
		else if(tian[ht]>king[hk])
		{
			res+=200;
			ht++;
			hk++;
		}
		else 
		{
			if(tian[ht]<king[tk])
			{
				res-=200;
				ht++;
				tk--;
			}
		}
	}
	printf("%d\n",res);
	return 0;
}```
第一个else if那里贪心明明写错了。
2021/7/16 18:38
加载中...