玄关求条
查看原帖
玄关求条
1224895
_Tatsu_楼主2024/9/26 17:27
#include <bits/stdc++.h>
#define int long long
#define fro for
using namespace std;
int n,a[514514];
int mod[514514]={-114514},tail=1;
bool used[514514]={};
vector<int>ans;
signed main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	//freopen ("aaa.in","r",stdin);
	//freopen (".out","w",stdout);
	cin>>n;
	for (int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for (int i=1;i<=n;i++)
	{
		for (int j=1;j<=n;j++)
		{
			if (i!=j)
			mod[tail++]=a[i]%a[j];
		}
	}
	//cout<<1;
	tail--;
	sort(mod+1,mod+1+tail);
	for (int i=1;i<=tail;i++)
	{
		if (mod[i-1]==mod[i])
		{
			used[i]=1;
			//cout<<mod[i];
		}
	}
	//cout<<2;
	int leave=0;
	for (int i=1;i<=tail;i++)
	{
		if (!used[i])
		leave++;
	}
	if (leave<2)
	{
		cout<<-1;
		return 0;
	}
	//cout<<3;
	for (int i=1;i<=tail;i++)
	{
		if (!used[i])
		{
			ans.push_back(mod[i]);	
		}
	}
	//cout<<4;
	cout<<ans[ans.size()-2];
	return 0;
}
/*
0 0 1 1 1 1 2 4 4 4 5 5
0 1 0 1 1 1 0 0 1 1 0 1
*/
2024/9/26 17:27
加载中...