这道题的正解比其他代码更简单,更容易理解(当然,本蒟蒻也看不懂大佬写的代码TwT)
#include<bits/stdc++.h>
using namespace std;
bool check(int a,int b,int c){
if(a+b<=c||b+c<=a||a+c<=b){
return false;
}
return true;
}
int main(){
long long n;
int cnt=0;
cin>>n;
vector<long long>a(n+1);
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a.begin()+1,a.end());
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
for(int k=j+1;k<=n;k++)
{
int x=a[i];
int y=a[j];
int z=a[k];
if(xy||xz||y==z)
{
if(check(x,y,z))
{
cnt++;
}
}
}
}
}
cout<<cnt;
return 0;
}