Pagini recente » Cod sursa (job #1269143) | Cod sursa (job #2452319) | Cod sursa (job #1101142) | Cod sursa (job #1533329) | Cod sursa (job #2405244)
#include <bits/stdc++.h>
#define x first
#define y second
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int N, K, sol;
double th[1000003];
pair<double, double> a[1003];
int main() {
f >> N;
for(int i = 1; i <= N; i++)
f >> a[i].x >> a[i].y;
for(int i = 1; i <= N; i++) {
for(int j = i + 1; j <= N; j++) {
th[++K] = -1;
if(a[i].x != a[j].x) {
th[K] = (a[i].y - a[j].y) / (a[i].x - a[j].x);
}
}
}
sort(th + 1, th + K + 1);
int i;
for(i = 1; i <= K && th[i] == -1; i++);
int lg = 0;
for( i++; i <= K; i++) {
if(th[i] != th[i - 1]) {
sol += lg * (lg + 1) / 2;
lg = 0;
} else lg++;
}
g << sol << "\n";
return 0;
}