比赛 不平凡的世界 评测结果 AAAWWWWAAW
题目名称 不平凡的boss 最终得分 50
用户昵称 cdcq 运行时间 2.213 s
代码语言 C++ 内存使用 3.67 MiB
提交时间 2015-11-05 10:13:51
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
struct guai
{
	int flag;
	int ap;
	int ad;
	int mp;
	int id;
	int min;
	int minflag;
}a[110000];
int dui[110000],n;
bool pai(guai x,guai y)
{
	return(x.min>y.min);
}
int main()
{
	freopen("playwithboss.in","r",stdin);
	freopen("playwithboss.out","w",stdout);
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d%d",&a[i].ad,&a[i].ap,&a[i].mp);
		a[i].id=i,a[i].flag=1;
		if(a[i].ad<=a[i].ap&&a[i].ad<=a[i].mp)
			a[i].min=a[i].ad,a[i].minflag=1;
		else if(a[i].ap<=a[i].ad&&a[i].ap<=a[i].mp)
			a[i].min=a[i].ap,a[i].minflag=2;
		else
			a[i].min=a[i].mp,a[i].minflag=3;
	}
	sort(a+1,a+n+1,pai);
	int money=0;
	for(int i=1;i<=n;i++)
	{
		if(a[i].flag==1)
		{
			a[i].flag=0;
			money+=a[i].min;
			if(a[i].minflag==1)
				for(int j=i+1;j<=n;j++)
					if(a[j].ad<=a[i].min)
						a[j].flag=0;
			if(a[i].minflag==2)
				for(int j=i+1;j<=n;j++)
					if(a[j].ap<=a[i].min)
						a[j].flag=0;
			if(a[i].minflag==3)
				for(int j=i+1;j<=n;j++)
					if(a[j].mp<=a[i].min)
						a[j].flag=0;
		}
	}
	cout<<money<<endl;
	return 0;
}