Pagini recente » Cod sursa (job #3199827) | Cod sursa (job #964698) | Cod sursa (job #1354571) | Cod sursa (job #1318831) | Cod sursa (job #1140583)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("trapez.in");
ofstream fout ("trapez.out");
struct punct {
int x;
int y;
}v[1010];
long double p[1000010];
int n,i,x,y,sol,s,j,k;
int main () {
fin>>n;
for (i=1;i<=n;i++)
fin>>v[i].x>>v[i].y;
for (i=1;i<=n;i++)
for (j=i+1;j<=n;j++) {
y=v[i].y-v[j].y;
x=v[i].x-v[j].x;
if (x==0)
x=2000000001;
p[++k]=y*1.0/x;
}
sort (p+1,p+k+1);
sol=1;
for (i=2;i<=k;i++){
if (p[i]==p[i-1])
sol++;
else {
s+=sol*(sol-1)/2;
sol=1;
}
}
fout<<s<<"\n";
return 0;
}