Pagini recente » Cod sursa (job #2099693) | Cod sursa (job #1682814) | Cod sursa (job #369440) | Cod sursa (job #1571854) | Cod sursa (job #1720148)
/********************
Created by Sburly
********************/
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
unsigned int n;
vector<pair<unsigned long int, unsigned long int> > v(1000);
vector<pair<long int,long int> > p(1000000);
bool mf(pair<long int,long int> i, pair<long int,long int> j)
{
return (i.second * j.first < j.second * i.first);
}
int main()
{
ifstream f("trapez.in");
ofstream g("trapez.out");
f >> n;
for(unsigned int i = 0; i < n; i++)
{
f >> v[i].first;
f >> v[i].second;
}
unsigned int k = 0;
for(unsigned int i = 0; i < n-1; i++)
{
for(unsigned int j = i+1; j < n; j++)
{
if(v[j].first == v[i].first)
{
p[k].first = 2147483647;
p[k].second = 1;
}
else
{
p[k].first = v[j].first - v[i].first;
p[k].second = v[j].second - v[i].second;
}
k++;
}
}
sort(p.begin(), p.begin()+k-1,mf);
unsigned int sol = 0;
for(unsigned int i = 0; i < k-1; i++)
{
if(p[i].second * p[i+1].first == p[i+1].second * p[i].first)
sol++;
}
g << sol;
return 0;
}