比赛 不平凡的世界 评测结果 WAWWWWWWWW
题目名称 不平凡的boss 最终得分 10
用户昵称 VG|Kn. 运行时间 3.080 s
代码语言 C++ 内存使用 2.22 MiB
提交时间 2015-11-05 09:47:15
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
using namespace std;

const int maxn = 100000 + 100;
int n;
int ma = 0, mb = 0, mc = 0;
int f;

struct node
{
	int a;
	int b;
	int c;
	int s;
	int m;
}g[maxn];

int min3(int x, int y, int z)
{
	int m3 = x;
	if (y < m3)
		m3 = y;
	if (z < m3)
		m3 = z;
	return m3;
}

 int main()
{
	freopen("playwithboss.in","r",stdin);
	freopen("playwithboss.out","w",stdout);
	cin >> n;
	for (int i = 1; i <= n; i++)
	{
		cin >> g[i].a >> g[i].b >> g[i].c;
	}
	for (int i = 1; i <= n; i++)
	{
		if (g[i].a != g[i].b && g[i].a != g[i].c && g[i].b != g[i].c)
		{
			g[i].m = min3(g[i].a, g[i].b, g[i].c);
			if (g[i].m == g[i].a && g[i].m > ma)
			{
				ma = g[i].m;
			}
			if (g[i].m == g[i].b && g[i].m > mb)
			{
				mb = g[i].m;
			}
			if (g[i].m == g[i].c && g[i].m > mc)
			{
				mc = g[i].m;
			}
		}
	}
	for (int i = 1; i <= n; i++)
	{
		if (g[i].a == g[i].b && g[i].a != g[i].c && g[i].b != g[i].c)
		{
			if (g[i].a > g[i].c )
			{
				if (g[i].c > mc)
				{
					mc = g[i].c;
				}
			}
			else if (g[i].a < g[i].c)
			{
				if (g[i].a > ma && g[i].b > mb)
				{
					if ((g[i].a-ma) > (g[i].b-mb))
					{
						mb = g[i].b;
					}
					else
					{
						ma = g[i].a;
					}	
				}
			}
		}
		else if (g[i].a != g[i].b && g[i].a == g[i].c && g[i].b != g[i].c)
		{
			if (g[i].a > g[i].b)
			{
				if (g[i].b > mb)
				{
					mb = g[i].b;
				}
			}
			else if (g[i].a < g[i].b)
			{
				if (g[i].a > ma && g[i].c > mc)
				{
					if ((g[i].a-ma) && (g[i].c-mc))
					{
						mc = g[i].c;
					}
					else
					{
						ma = g[i].a;
					}
				}
			}
		}
		else if (g[i].a != g[i].b && g[i].a != g[i].c && g[i].b == g[i].c)
		{
			if (g[i].b > g[i].a)
			{
				if (g[i].a > ma)
				{
					ma = g[i].a;
				}
			}
			else if (g[i].b < g[i].a)
			{
				if (g[i].b > mb && g[i].c > mc)
				{
					if ((g[i].b-mb) > (g[i].c-mc))
					{
						mc = g[i].c;
					}
					else
					{
						mb = g[i].b;
					}
				}
			}
		}
		else if (g[i].a == g[i].b && g[i].b == g[i].c)
		{
			if (g[i].a > ma && g[i].b > mb && g[i].c > mc)
			{
				f = min3((g[i].a-ma), (g[i].b-mb), (g[i].c-mc));
				if (f == (g[i].a-ma))
				{
					ma = g[i].a;
				}
				else if (f == (g[i].b-mb))
				{
					mb = g[i].b;
				}
				else if (f == (g[i].c-mc))
				{
					mc = g[i].c;
				}
			}
		}
	}
	int ans;
	ans = ma + mb + mc;
	cout << ans;
	return 0;
}