Pagini recente » Cod sursa (job #1480152) | Cod sursa (job #139134) | Cod sursa (job #800214) | Cod sursa (job #2725694) | Cod sursa (job #2645081)
#include <bits/stdc++.h>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int n,i,j,rez,nr, x[1001], y[1001],k;
long double pante[1000001], panta;
struct punct {
long x, y;
}v[10001];
int main()
{
f >> n;
for ( i = 1; i <= n; i++ )
f >> v[i].x >> v[i].y;
for ( i = 1; i <= n; i++)
for ( j = i+1; j <= n; j++)
if ( v[i].x == v[j].x ) pante[++k] = INT_MAX;
else
{panta = (1.0 * (v[j].y - v[i].y)) / (1.0 *(v[j].x - v[i].x));
pante[++k] = panta; }
sort (pante + 1, pante + k + 1);
/*for (i=1; i<=k;i++)
cout<<pante[i]<<" ";*/
nr = 1;
for ( i = 1; i <= k; i++)
if( pante[i] == pante[i+1] )
nr++;
else
{
rez += ((nr*(nr-1))/2);
nr = 1;
}
g << rez;
return 0;
}