Pagini recente » Cod sursa (job #1329036) | Cod sursa (job #1984475) | Cod sursa (job #808899) | Cod sursa (job #2765185) | Cod sursa (job #2595896)
#include <bits/stdc++.h>
using namespace std;
#define oo 2000000010;
ifstream f("trapez.in");
ofstream g("trapez.out");
const int N=1010;
vector <double> s;
int n,x[N],y[N],nrp;
long double panta(int xA,int xB,int yA,int yB)
{
if(xA==xB)
return oo;
return
((double)(yB-yA))/((double)(xB-xA));
}
int main()
{
f>>n;
for(int i=1;i<=n;i++)
f>>x[i]>>y[i];
for(int i=1;i<n;i++)
for(int j=i+1;j<=n;j++)
{s.push_back(panta(x[i],x[j],y[i],y[j]));
nrp++;}
sort(s.begin(),s.end());
long long l=1;
long long tr=0;
for(int i=1;i<s.size();i++)
{
if(s[i]==s[i-1])
l++;
else
{tr+=l*(l-1)/2;
l=1;}
}
tr+=l*(l-1)/2;
g<<tr;
return 0;
}