Обработка математики: 7%

printРабочее место участника

printЗадачи

2718. Функции и подпрограммы 45

Ограничения: время – 200ms/500ms, память – 128MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Напишите функцию ClosestPoints, псевдокод для которой написан ниже.

int n,a,b;
...
double x[n],y[n];
...
ClosestPoints(x,y,n,&a,&b);
...

В качестве решения необходимо отправлять файл, содержащий только определение функции!

Алгоритм ClosestPoints (X,Y)
// Входные данные: массивы X[0..., Y[0...n-1], n>=2 – координаты точек
// Выходные данные: индексы (a,b) пары ближайших точек
d_{min} larr +oo
for i in [0...n-2] do
quad for j in [i+1...n-1] do
quad quad d larr sqrt{(X[i] -X[j])^2+(Y[i]-Y[j])^2}
quad quad if d < d_{min}
quad quad quad quad d_{min} larr d; a larr i; b larr j
return (a,b)

loading