Pagini recente » Cod sursa (job #436541) | Cod sursa (job #436528) | Cod sursa (job #1050834) | Cod sursa (job #1307207) | Cod sursa (job #1580555)
#include <fstream>
using namespace std;
ifstream f ("trapez.in");
ofstream g ("trapez.out");
struct {int x;int y;}c[1001];
double a[1001][1001];
int n,x,y,i,j,t,w,e,nr;
float m;
int main()
{
f>>n;
for(i=1;i<=n;i++)
{
f>>w>>e;
c[i].x=w;
c[i].y=e;
}
for(i=1;i<=n;i++)
{
t=0;
for(j=i+1;j<=n;j++)
{
if(c[j].y!=c[i].y && c[j].x!=c[i].x )
m=(c[j].y-c[i].y)/(c[j].x-c[i].x);
else
if(c[j].y==c[i].y || c[j].x==c[i].x )
nr++;
if(m<0)m=-m;
a[i][++t]=m;
}
}
if(nr%2!=0)nr--;
x=nr;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
for(int k=i+1;k<n;k++)
for(int p=1;p<=n;p++)
if(a[i][j]==a[k][p] && a[k][p]!=0) nr++;
}
}
g<<(nr-x)/2<<endl;
/*for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++) g<<a[i][j]<<" ";
g<<endl;
}*/
f.close();
g.close();
return 0;
}