ЗАДАЧА 518 На плоскости задано N точек. Найти две

УСЛОВИЕ:

На плоскости задано N точек. Найти две точки среди данных, находящихся на минимальном расстоянии друг от друга.
Входные данные.
Первая строка входного файла содержит число N (2?N?10^5). Далее в файле записано N пар целых чисел, задающих координаты точек. Все координаты по модулю не превышают 104.
Выходные данные.
В выходной файл выведите пару чисел — номера точек, для которых достигается минимум расстояния. Точки нумеруются, начиная с 1. Если решений несколько, то следует вывести любое из них.

РЕШЕНИЕ:

var F, G:text;
a,b,c,d,i,j,n:integer;
var rasst,min:real;
begin

assign(F,'in.txt');
assign(G,'out.txt');
reset(F);
rewrite(G);


read(F,n);
readln(F);

min:=1000;

for i:=1 to n do begin



read(F,a); read(F,b);

for j:=1 to n do begin
if(i<>j) then begin
read(F,c); read(F,d);
rasst:=sqrt((c-a)*(c-a)+(d-b)*(d-b));

if(rasst<min) and (rasst<>min) then begin
min:=rasst; rewrite(G); writeln(G,i,' ',j);
end;


end;


if(j=n) then begin
close(F);
reset(F);
readln(F);
end;

end;


end;

close(F);
close(G);

end.
ВОПРОСЫ ПО РЕШЕНИЮ?
НАШЛИ ОШИБКУ?
отправить + регистрация в один клик
опубликовать + регистрация в один клик

ОТВЕТ:

в решение

Нужна помощь?

Опубликовать

Добавил slava191 , просмотры: ☺ 836 ⌚ 24.01.2014. информатика 10-11 класс
КОД ВСТАВКИ

РЕШЕНИЯ ПОЛЬЗОВАТЕЛЕЙ
Написать своё решение

Только зарегистрированные пользователи могут писать свои решения.
Увы, но свой вариант решения никто не написал... Будь первым!

НАПИСАТЬ КОММЕНТАРИЙ

Мы ВКонтакте
Последние решения

MargaritaPyrkina ✎ к задаче 19701

MargaritaPyrkina ✎ к задаче 19703

slava191 ✎ 4x - 5/x^2 к задаче 19700

u1452559144 ✎ y=10корень x к задаче 19589

Dima6372919237 ✎ Приблизительно -16 к задаче 19683