Pagini recente » Cod sursa (job #663113) | Cod sursa (job #2426800) | Cod sursa (job #472420) | Cod sursa (job #3155306) | Cod sursa (job #2614515)
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;
ifstream cin("trapez.in");
ofstream cout("trapez.out");
int n;
struct tr
{
long long x,y;
}v[1005];
vector <long double> nr;
void read()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>v[i].x>>v[i].y;
}
void solve()
{
long double p;
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
p=2*1e9+1;
if(v[i].x!=v[j].x)
p=(v[j].y-v[i].y)*1.0/(v[j].x-v[i].x);
nr.push_back(p);
}
sort(nr.begin(),nr.end());
int ans=0,len=1;
for(int i=1;i<nr.size();i++)
if(nr[i]==nr[i-1])
len++;
else
{
ans+=len*(len-1)/2;
len=1;
}
cout<<ans;
}
int main()
{
read();
solve();
return 0;
}