Задача A Існує дві дороги: Одна пряма, а інша … Pascal програма

30.01.2016 0 By svvas

Львівська районна учнівська олімпіада з інформатики 2015

Задача A Існує дві дороги: Одна пряма, а інша …

Існує дві дороги: Одна пряма, а інша … Цілий день члени виборчої комісії нудяться, спостерігають за виборами, а потім ще й підраховують голоси. Зате вже після підрахунку голосів члени виборчої комісії починають веселитися та возити протоколи з виборчих дільниць в регіональні представництва. Звісно, кожна з виборчих дільниць з’єднана дорогою зі своїм регіональним представництвом. Та все не так просто. Так склалося, що дороги прямі, а їх довжини є кратними тисячі метрів. Пан Городний, який є членом виборчої комісії, задумався, скільки кілометрів цього дня проїдуть автомобілі, що возитимуть протоколи. Для того, щоб це дізнатися, він знайшов карту з позначеними на ній виборчими комісіями та відповідними їм регіональними представництвами. Пан Городний знайшов карту. Ваше завдання – написати програму, яка порахує скільки кілометрів проїдуть автомобілі, що возитимуть протоколи в день виборів. До кожної виборчої дільниці належить рівно один автомобіль, який може їхати лише до відповідного регілнального представництва.

Вхідні дані: Перший рядок містить одне натуральне число: N – кількість виборчих дільниць. Наступні N рядків містять по 4 цілі числа: X1, Y1, X2, Y2. Перші два з них – координати виборчої дільниці. Наступні два – координати відповідного регіонального представництва.

Вихідні дані: Одне ціле невід’ємне число — кількість кілометрів, яку проїдуть автомобілі, що возитимуть протоколи в день виборів. Обмеження: 1 ≤ N ≤ 100 000 0 ≤ |X1|, |Y1|, |X2|, |Y2| ≤ 1 000

Приклад вводу: 3 -3 2 1 5 0 0 6 8 4 7 6 7

Приклад виводу: 17

Підказка: Перший автомобіль проїде 5км. (З точки (-3;2) до точки (1;5)) Другий автомобіль проїде 10км. (З точки (0;0) до точки (6;8)) Третій автомобіль проїде 2км. (З точки (4;7) до точки (6;7)) Сумарно – 17км.

program m3;
var x1,x2,y1,y2,n,i,f:integer;k,s:real;
begin
s:=0;
read(n);
for i:= 1 to n do
begin
read(x1,x2,y1,y2);
k:=sqrt(sqr(x1-y1)+sqr(x2-y2));
s:=s+k
end;
f:=round(s);
write(f);
end.

Comments

comments