文章
16
粉丝
0
获赞
34
访问
688
#include <bits/stdc++.h>
using namespace std;
unordered_map<int,int> mp;
set<tuple<int,int,int>> st;
int main()
{
int n;
cin >> n;
vector<int> nums;
for(int times = 0;times < n;++times)
{
int temp;
cin >> temp;
nums.push_back(temp);
}
sort(nums.begin(),nums.end(),[](int a,int b){
return a<b;
});
for(int i =0;i < n;++i)
{
mp[nums[i]] = i;
}
int last_num = INT_MIN;
for(int i =0;i < n;++i)
{
int a = nums[i];
if(a == last_num) continue;
last_num = a;
int last_num2 = INT_MIN;
for(int j = 0;j < n;++j)
{
if(i == j) continue;
int b = nums[j];
if(last_num2 == b) continue;
last_num2 = b;
int need = -(a+b);
if(mp.find(need) != mp.end() && mp[need] != i && mp[need] != j)
{
int ans[3] = {a,b,need};
sort(ans,ans+3,[](int a,...
登录后发布评论
暂无评论,来抢沙发