TAKMIČENJA IZ PROGRAMIRANJA


Sva pitanja, predloge ili primedbe u vezi sa takmičenjima iz programiranja možete slati na e-mail:

tak.prog@gmail.com

U toku perioda za žalbe, sve žalbe možete slati na ovaj isti e-mail.

golf.pas    724 b      izvorni kod rešenja
golf.tests.rar    6,890,233 b      test primeri
golf.checker.pas    467 b      izvorni kod programa za testiranje

zadatak: Golf

Đurajger Paunuds je profesionalni igrač golfa. Baš se danas vratio s turnira na kom je izvojevao veoma tešku, ali utoliko slađu pobedu, i sada zbog postturnirskog stresa ima problema s ružnim snovima. Đurajger sanja da se nalazi na ogromnom terenu za golf, na kom ga, sa željom da ga što dalje lansira, juri ogromna palica za golf! Srećom, na ovom ogromnom terenu za golf ima mnogo ogromnih rupa (kao što je očekivano), i Đurajger je svoju šansu video u tome da se sakrije u jednu od njih. On treba da odabere jednu rupu i potrči k njoj pravolinijski. Palica odmah zaključuje ka kojoj rupi Đurajger trči, i potrčaće ka istoj rupi dvaput većom brzinom. Treba pronaći rupu ka kojoj Đurajger treba da potrči kako bi se uspešno spasao, ako takva postoji.

Ulaz:

(Ulazni podaci se nalaze u datoteci golf.in) U prvom redu ulazne datoteke nalaze se dva realna broja, koji predstavljaju x-koordinatu i y-koordinatu Đurajgerove početne pozicije. U drugom redu ulazne datoteke nalaze se još dva realna broja, koji predstavljaju x-koordinatu i y-koordinatu početne pozicije palice. U trećem redu nalazi se prirodan broj n (1 ≤ n ≤ 1.000.000), koji predstav a broj rupa na igralixtu. U narednih n redova nalaze se po dva realna broja, pri qemu se u i-tom od tih redova nalaze koordinate i-te rupe.

Izlaz:

(Izlazne podatke upisati u datoteku golf.out) U prvi i jedini red izlazne datoteke upisati redni broj rupe u koju Đurajger treba da se sakrije (ukoliko postoji više takvih, naći bilo koju), odnosno "Nadrljao je!" ukoliko takva rupa ne postoji.

Primer:

golf.in      golf.out
0.0 0.0
5.0 5.0
3
1.0 1.0
9.0 9.0
4.0 5.0
        
1

Objašnjenje.

Slika ispod prikazuje raspored rupa, kao i pozicije na kojima se nalaze Đurajger i palica za prvi primer. Takođe je strelicom pokazano koja je to rupa spasonosna za Đurajgera.

Primer:

golf.in      golf.out
0.0 0.0
5.0 5.0
2
9.0 9.0
4.0 5.0
        
Nadrljao je!
fajl: golf.pas
var n,i:longint;
    dj1,dj2,p1,p2,x,y:real;
    q:boolean;
    f,g:text;
begin
 assign(f,'golf.in');
 assign(g,'golf.out');
 reset(f);
 rewrite(g);
 readln(f,dj1,dj2);
 readln(f,p1,p2);
 readln(f,n);
 q:=false;
 i:=1;
 repeat
    readln(f,x,y);
    if sqrt(sqr(p1-x)+sqr(p2-y))-2*sqrt(sqr(dj1-x)+sqr(dj2-y))>=-0.000001 then begin
                                                                                writeln(g,i);
                                                                                q:=true;
                                                                               end;
    inc(i);
 until (i>n) or q;
 if not q then writeln(g,'Nadrljao je!');
 close(f);
 close(g);
end.