Pagini recente » Cod sursa (job #1884285) | Cod sursa (job #1596464) | Cod sursa (job #2570853) | Cod sursa (job #105550) | Cod sursa (job #1018830)
#include<iostream>
#include<fstream>
#include<cmath>
#include<algorithm>
#include<unordered_map>
using namespace std;
int n, s;
double x;
struct punct{
int a, b;
} v[1002];
unordered_map<double, int> m;
int main()
{
ifstream f("trapez.in");
ofstream g("trapez.out");
f>>n;
for(int i=0;i<n;i++)
f>>v[i].a>>v[i].b;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
m[(float)(v[j].b-v[i].b)/(v[j].a-v[i].a)]++;
unordered_map<double, int>::iterator mt;
for(mt=m.begin(); mt!=m.end(); ++mt)
{
x=mt->second;
s+=x*(x-1)/2;
}
s+=x*(x-1)/2;
g<<s<<'\n';
g.close();
}