Cod sursa(job #1205778)
| Utilizator | Data | 8 iulie 2014 01:18:42 | |
|---|---|---|---|
| Problema | Trapez | Scor | 50 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <fstream>
#include <map>
using namespace std;
struct P{int x,y;};
P a[1001];
int n,Sum=0;
map<double,int> H;
map<double,int>::iterator it;
int main(){
ifstream f("trapez.in");
ofstream g("trapez.out");
int Sum=0;
f >> n;
for(int i=1;i<=n;i++)
f >> a[i].x >> a[i].y;
for(int i=1;i<n;i++)
for(int j=i+1;j<=n;j++)
H[(double)(a[i].y-a[j].y)/(a[i].x-a[j].x)]++;
for(it=H.begin();it!=H.end();it++)
Sum+=(it->second)*(it->second-1)/2;
g << Sum <<"\n";
}
