Pagini recente » Cod sursa (job #1044068) | Cod sursa (job #1375049) | Cod sursa (job #2698200) | Cod sursa (job #265868) | Cod sursa (job #2624906)
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int n;
struct tr
{
long long x,y;
}v[1005];
vector <long double> pante;
void nr_tr()
{
long double p;
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
if(v[i].x!=v[j].x)
p=(v[j].y-v[i].y)*1.0/(v[j].x-v[i].x);
pante.push_back(p);
}
sort(pante.begin(),pante.end());
int rez=0,len=0;
for(int i=1;i<pante.size();i++)
if(pante[i]==pante[i-1])
len++;
else
{
rez+=len*(len-1)/2;
len=0;
}
g<<rez;
}
int main()
{
f>>n;
for(int i=1;i<=n;i++)
f>>v[i].x>>v[i].y;
nr_tr();
}