Pagini recente » Cod sursa (job #1576856) | Cod sursa (job #295953) | Cod sursa (job #2394889) | Cod sursa (job #641566) | Cod sursa (job #2754525)
// trapez - infoarena
#include <bits/stdc++.h>
using namespace std;
struct ura{
int x,y;
};
ura v[1001];
vector <pair<int,int>> x;
int main()
{
ifstream cin("trapez.in");
ofstream cout("trapez.out");
int n;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>v[i].x>>v[i].y;
}
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
int dl=v[j].x-v[i].x;
int dc=v[j].y-v[i].y;
int gcd=__gcd(dl,dc);
dl/=gcd;
dc/=gcd;
x.push_back({dl,dc});
}
}
sort(x.begin(),x.end());
int ans=0,aux=0;
for(int i=1;i<(int)x.size();i++)
{
if(x[i]==x[i-1])
aux++;
else
{
ans+=(aux*(aux-1)/2);
aux=1;
}
}
cout<<ans;
}