Pagini recente » Cod sursa (job #743402) | Cod sursa (job #3198768) | Cod sursa (job #2655805) | Cod sursa (job #1723086) | Cod sursa (job #2145144)
#include <cstdio>
#include<cmath>
#include<algorithm>
#define NMAX 1005
#define x first
#define y second
const int eps=1e-18;
using namespace std;
int n,nr,cnt,ans;
pair<int,int>a[NMAX];
double big_val=7e6,dist[NMAX*NMAX];
int main()
{
freopen("trapez.in","r",stdin);
freopen("trapez.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d %d",&a[i].x,&a[i].y);
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
nr++;
if(a[i].x==a[j].x)
dist[nr]=big_val;
else
dist[nr]=(double)(a[i].y-a[j].y)/(a[i].x-a[j].x);
}
sort(dist+1,dist+nr+1);
long long sum=0;
for(int i=1;i<=nr;i++)
{
int cnt=0;
while(dist[i+1]==dist[i])
{
cnt++;
i++;
}
sum+=((cnt+1)*cnt)/2;
}
printf("%d",sum);
}