Pagini recente » Cod sursa (job #3360926) | Cod sursa (job #3360918) | Cod sursa (job #3360895) | Cod sursa (job #3360910) | Cod sursa (job #3360924)
#include <bits/stdc++.h>
#define double long double
#define int long long
using namespace std;
ifstream f("adapost2.in");
ofstream g("adapost2.out");
struct elem
{
double x, y;
};
elem v[100009], ans;
int n;
double dist (double x, double y)
{
double sum=0;
for (int i=1; i<=n; i++)
{
sum+=sqrtl ((x-v[i].x)*(x-v[i].x)+(y-v[i].y)*(y-v[i].y));
}
return sum;
}
int dx[]={1, -1, 0, 0}, dy[]={0,0,1,-1};
signed main ()
{
f >> n;
for (int i=1; i<=n; i++)
f >> v[i].x >> v[i].y;
ans.x=0, ans.y=0;
double pas=2000, dmin=dist (ans.x, ans.y);
while (pas>=0.00001)
{
for (int i=0; i<4; i++)
{
if (dist (ans.x+dx[i]*pas, ans.y+dy[i]*pas)<dmin)
{
dmin=dist (ans.x+dx[i]*pas, ans.y+dy[i]*pas);
ans.x+=dx[i]*pas;
ans.y+=dy[i]*pas;
}
}
pas/=2;
}
g << ans.x << ' ' << ans.y;
}