Pagini recente » Cod sursa (job #2498245) | Cod sursa (job #334310) | Cod sursa (job #2706176) | Cod sursa (job #325900) | Cod sursa (job #467939)
Cod sursa(job #467939)
#include <cstdio>
#include <iostream>
#include <algorithm>
#define x first
#define y second
using namespace std;
const int INF = 1000000009;
const int NMAX = 1007;
int N;
pair<int, int> coord[NMAX];
double pante[NMAX * NMAX];int curent = 0;
void citire()
{
cin >> N;
for(int i = 1 ; i <= N ; i++)
cin >> coord[i].x >> coord[i].y;
}
void calc_pante()
{
for(int i = 1 ; i <= N ; i++)
for(int j = i + 1 ; j <= N ; j++)
if(coord[i].x == coord[j].x)
pante[++curent] = INF;
else
pante[++curent] = (double)(coord[i].y - coord[j].y) / (coord[i].x - coord[j].x);
}
int aflare_rez()
{
int REZ = 0;
for(int i = 1, j = 1 ; i <= curent ; i++, j = i)
while(pante[i] == pante[j + 1])
REZ++, j++;
return REZ;
}
int main()
{
freopen("trapez.in", "r", stdin);
freopen("trapez.out", "w", stdout);
citire();
calc_pante();
sort(pante + 1, pante + curent + 1);
printf("%d", aflare_rez());
return 0;
}