Pagini recente » Cod sursa (job #3259403) | Cod sursa (job #739602) | Cod sursa (job #2071893) | Cod sursa (job #2186230) | Cod sursa (job #1560512)
#include <bits/stdc++.h>
using namespace std;
ifstream in("trapez.in");
ofstream out("trapez.out");
struct punct
{
long long x, y;
}v[1008];
double p[1000008];
int main()
{
long long n,i,j,k,c=0,ans=0;
in>>n;
for(int i=1;i<=n;i++)
in>>v[i].x>>v[i].y;
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
p[++c]=(double)(v[i].x-v[j].x)/(v[i].y-v[j].y);
sort(p+1,p+c+1);
for(int i=1;i<=c;i++)
{ int nr=1;
while(p[i]==p[i+1]&&i+1<=c)
{
++nr;
++i;
}
ans+=(nr*(nr-1))/2;
//combinari de nr luate cate 2
}
out<<ans;
return 0;
}