Pagini recente » Cod sursa (job #1808211) | Cod sursa (job #2571569) | Cod sursa (job #3150948) | Cod sursa (job #1372022) | Cod sursa (job #2618844)
#include <bits/stdc++.h>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
struct punct
{
double x, y;
} v[1000005];
double p[10001];
int n;
int m = INT_MAX;
int main()
{
f >> n;
for( int i = 1; i <= n; i++)
f >> v[i].x >> v[i].y;
int nr = 0;
for( int i = 1; i <= n; i++)
for( int j = i+1; j <= n; j++)
if(i != j)
{
nr++;
if(v[i].x == v[j].x)
p[nr] = m;
else
p[nr] = (v[j].y - v[i].y) * 1.0 / (v[j].x - v[i].x);
}
sort(p + 1, p + nr + 1);
int k = 1, nr_tr = 0;
for( int i = 2; i <= nr; i++)
{
if(p[i] == p[i-1])
k++;
else
{
nr_tr = nr_tr + (k * (k - 1) / 2);
k = 1;
}
}
g << nr_tr;
return 0;
}