Pagini recente » Cod sursa (job #2375370) | Cod sursa (job #396400) | Cod sursa (job #871068) | Cod sursa (job #512387) | Cod sursa (job #1429562)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int n;
struct punct
{
int x,y;
} v[1001];
vector <double> sol;
const double INFI = 2e9;
double CalculPanta (punct a, punct b)
{
int p,q;
p=a.x-b.x;
q=a.y-b.y;
if (!p)
return INFI + 1;
return (double) q / p * 1.0;
}
int main()
{
f>>n;
for(int i=0; i<n; i++)
f>>v[i].x>>v[i].y;
f.close();
int64_t ct=0;
for(int i=0; i<n-1; i++)
for(int j=i+1; j<n; j++)
sol.push_back(CalculPanta(v[i],v[j]));
int m=sol.size();
sort(sol.begin(),sol.end());
for(int i=1; i<m; i++)
if(sol.at(i)==sol.at(i-1))
ct++;
g<<ct;
}