Cod sursa(job #1813332)
| Utilizator | Data | 22 noiembrie 2016 21:19:36 | |
|---|---|---|---|
| Problema | Trapez | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("trapez.in");
ofstream g("trapez.out");
int n,m,i,j,s,nr,x[1<<10],y[1<<10];
double p[1<<19];
int main()
{
f>>n;
for(i=1;i<=n;++i) f>>x[i]>>y[i];
for(i=1;i<=n;++i)
for(j=i+1;j<=n;++j)
p[++m]=(double)(x[i]-x[j])/(y[i]-y[j]);
sort(p+1,p+m+1);
for(i=1;i<=m;++i)
{
nr=1;
while(p[i]==p[i+1]&&i<m) nr++,i++;
s+=(nr-1)*nr/2;
}
g<<s;
return 0;
}
