Решение задачи "Наиболее удаленная точка" с Mccme

С пояснением   Просмотров: 15


Выведите координаты наиболее удаленной от начала координат точки.

Код

#include <bits/stdc++.h>
using namespace std;

double solve(int x, int y)
{
    return sqrt(x * x + y * y);
}
int main()
{
    double res = -1, rx, ry;
    int n, x, y;
    cin >> n;
    for(int i = 0; i < n; ++i){
        cin >> x >> y;
        double t = solve(x, y);
        if(t > res){
            res = t;
            rx = x;
            ry = y;
        }
    }
    cout << rx << " " << ry;
    return 0;
}

         

 Администратор Photo Автор: Администратор


Используем формулу нахождения расстояния между двумя точками.
$$ \Large \sqrt{\left(x_1-x_2\right)_{\ \ \ +\ \ \ }^2\left(y_1-y_2\right)^2} $$
Создадим функцию для её нахождения и каждый раз(точнее N раз ) будем ссылаться на неё.
Если функция возвращает результат больше, чем res, то поменяем координаты. Координаты будут храниться в переменных rx и ry. На Informatics mccme разбор довольно сложный, поэтому захотелось объяснить самому.

Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться