Cod sursa(job #2062418)

Utilizator AlexandruLuchianov1Alex Luchianov AlexandruLuchianov1 Data 10 noiembrie 2017 12:42:30
Problema Trapez Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;
ifstream in ("trapez.in");
ofstream out ("trapez.out");
int const nmax = 1000;
struct Point{
  double x;
  double y;
};
double v[5 + nmax * nmax];
Point p[5 + nmax];

int main()
{
  int n;
  in>>n;
  for(int i = 1 ;i <= n ;i++){
    in>>p[i].x>>p[i].y;
  }
  int vp = 1;
  for(int i = 1 ; i <= n ;i++){
    for(int j = i + 1 ;j <= n ;j++){
      v[vp] = (p[i].x - p[j].x) / (p[i].y - p[j].y);
      vp++;
      //cout<<i<<" "<<j<<" "<<(p[i].x - p[j].x)<<" "<<(p[i].y - p[j].y)<<'\n';
    }
  }
  sort(v + 1 ,v + vp);
  int result = 0, sum = 1;
  for(int i = 2 ;i < vp ;i++){
    if(v[i] == v[i - 1]){
      result += sum;
      sum++;
    } else{
      sum = 1;
    }
  }
  out<<result;
  return 0;
}