求助,0分RE,蒟蒻求改
查看原帖
求助,0分RE,蒟蒻求改
508988
PP__楼主2022/10/28 15:02
#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <cmath>
using namespace std;

int x,y,z,box1[2010][2010],t1[2010][2010],t2[2010][2010],box2[2010][2010];
int insert(int a,int b,int c,int i)
{
	if(c > box1[a][b])
	{
		box2[a][b] = box1[a][b];
		t2[a][b] = t1[a][b];
		box1[a][b] = c;
		t1[a][b] = i;
	}
	else
	{
		if(box2[a][b] < c)
		{
			box2[a][b] = c;
			t2[a][b] = i;
		}
	}
}
int ii(int a,int b,int c,int i)
{
	if(a != b)insert(a,b,c,i);
	insert(b,a,c,i);
	if(a != c)insert(a,c,b,i);
	insert(c,a,b,i);
	if(b != c)insert(b,c,a,i);
	insert(c,b,a,i);
}
int sp(int i)
{
	return i * i * i;
}
int main()
{
//	freopen("3.in","r",stdin);
//	freopen("kkksc03.out","w",stdout);
	int n;
	cin >> n;
	for (int i = 1;i <= n;i++)
	{
		cin >> x >> y >> z;
		ii(x,y,z,i);
		
	} 
	int maxn = 0,ans1,ans2;
	for (int i = 1;i <= 1000;i++)
	{
		for (int j = 1;j <= 1000;j++)
		{
			int t = sp(min(box1[i][j] + box2[i][j],min(i,j))) / 4;
			if(t > maxn)
			{
				ans1 = t1[i][j];
				ans2 = t2[i][j];
				maxn = t;
			}
		}
	}
	if(ans2 == 0)
	{
		cout << 0 << endl;
		cout << ans1 << endl;
		cout << maxn << endl;
	}
	else 
	{
		cout << 1 << endl;
		cout << ans1 << " " << ans2 << endl;
		cout << maxn << endl;
	}
	return 0;
}
2022/10/28 15:02
加载中...