Pagini recente » Cod sursa (job #2843452) | Cod sursa (job #2239145) | Cod sursa (job #2803859) | Cod sursa (job #2928389) | Cod sursa (job #1133622)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("trapez.in");
ofstream fout("trapez.out");
#define MAX 1100
pair<int, int> a[MAX];
long double b[MAX*MAX];
int main()
{
int s, n, i, j, x, y, l=0;
fin>>n;
for(i=1;i<=n;i++)
{
fin>>a[i].first>>a[i].second;
}
int t=0;
for(i=1;i<=n;i++)
{
for(j=i+1;j<=n;j++)
{
x=a[i].first-a[j].first;
y=a[i].second-a[j].second;
if(x)
b[++t]=(long double)y/x;
else
l++;
}
}
s=l*(l-1)/2;
sort(b+1, b+t+1);
int k=0;
for(i=1;i<=t;i++)
{
if(b[i]==b[i-1])
k++;
else
{
s+=(k*(k-1)/2);
k=1;
}
}
fout<<s;
}