You are on page 1of 5

kolsko takmienje iz informatike, subota 21.02.2004.

godine
Gimnazija "Svetozar Markovi" Ni

Ime zadatka IGRA KARTE SKOLA JOVICA


Direktorijum c:\takm_N c:\takm_N c:\takm_N c:\takm_N
Izvrni program igra.exe karte.exe skola.exe jovica.exe
Izvorni kod igra.pas karte.pas skola.pas jovica.pas
igra.cpp karte.cpp skola.cpp jovica.cpp
Ulazni fajl igra.in karte.in skola.in jovica.in
Izlazni fajl igra.out karte.out skola.out jovica.out
Vremensko 1 sekunda 1 sekunda 1 sekunda 1 sekunda
ogranienje
Broj test primera 10 20 10 10
Broj poena po test 10 5 10 5+5
primeru
Maksimalni broj 100 100 100 100
poena po zadatku
Zaglavlje u { { { {
Pascalu TASK: igra TASK: karte TASK: skola TASK: jovica
LANG: PASCAL LANG: PASCAL LANG: PASCAL LANG: PASCAL
} } } }
Zaglavlje u C++ \* \* \* \*
TASK: igra TASK: karte TASK: skola TASK: jovica
LANG: C++ LANG: C++ LANG: C++ LANG: C++
*\ *\ *\ *\

Takmiar treba da pokua da rei sve zadatke, iako misli da njegovo reenje nije najbolje ili nee
raditi za velike test primere. Za svaki zadatak bie sasvim trivijalnih test primera.

Za vreme takmienja zabranjen je timski rad na reavanju zadataka, ometanje drugih takmiara,
korienje literature ili disketa, kao i pristup drugim raunarima preko mree. Nepotovanje ovog
pravila moe dovesti do diskvalifikacije takmiara.

Radi automatske evaluacije Vaih reenja, potrebno je da izlazne podatke zapisujete u tano onom
formatu koji je specificiran u tekstu zadatka. Sav ispis na ekran u toku izvrenja Vaeg programa
bie ignorisan. Va program ne sme ekati na bilo kakav ulaz sa tastature ili prijavljivati bilo koji
run-time error, inae e broj bodova za taj test primer biti nula.

Dozvoljeni programski jezici su Turbo Pascal 7.0 i Borland C++ 3.1.


Izrada zadataka traje 4 sata. Uenici specijalnih odeljenja rade drugi, trei i etvrti zadatak, a ostali
uenici rade prvi, drugi i trei zadatak.

elimo Vam puno sree!

lanovi komisije su:


Vesna Velikovi, profesor
Marija Cvetkovi, profesor
Zoran Duni, student
Aleksandar Ili, student
Zadatak 1. Igra slagalica

Problem:
Mali Perica je gledao kviz "Muziku slagalicu" i mnogo mu se dopala igra sa slovima. Naime, od
datih N slova engleske abecede treba sastaviti to duu re, ali svako slovo se sme upotrebiti najvie
jednom. Zato je Perica nabavio i ogromni renik koji ima M rei. Ali avaj, pretraivanje po reniku
je vrlo zamoran posao.
Va zadatak je da pomognete Perici i napiete program koji e nai najduu re. Ukoliko ima vie
rei iste duine, tampati prvu u leksikografskom redosledu.

Ulaz:
U prvom redu ulazne datoteke igra.in nalazi se broj N (1 N 100). U sledeih N redova nalazi se
po jedno malo slovo a..z abecede.
Zatim sledi linija koja sadri broj M (1 M 10000) i u sledeih M redova u svakom redu po jedna
re duine manje ili jednake od 100.

Izlaz:
U izlazni fajl igra.out u prvom redu upisati duinu najdue rei, a u drugom redu samu re. Ukoliko
traena re ne postoji, upisati -1.

Primeri:
IGRA.IN IGRA.IN
4 3
a f
c a
a c
b 5
4 faca
aca cca
maca ac
bcca a
caa cc
IGRA.OUT IGRA.OUT
3 2
aca ac
Zadatak 2. Meanje karata

Problem:
Mali Perica je dobio za roendan pil od 2N karata obeleenih redom od 1 do 2N i mea ih na
sledei nain:
presee pil tano na pola i dobije dve gomile A i B od N karata, gde je A gornja polovina i B
donja polovina
kombinuje karte tako to redom uzima kartu sa gomile A, pa kartu sa gomile B i stavlja na
zajedniku gomilu, dok ne izmea svih 2N karata.

Kako je Perica zavrio sve domae zadatke, zanima se tako to mea karte ponovo i ponovo, dok ne
dobije prvobitan raspored karata {1, 2, 3,..., 2N}. Zanima ga koliko puta mora da promea pil da bi
se karte vratile u orginalan raspored.

Ulaz:
U prvom redu ulazne datoteke karte.in se nalazi broj N (1 N 5000).

Izlaz:
U izlaznu fajl karte.out treba upisati broj meanja potrebnih da se 2N karata vrate u originalnu
poziciju.

Primeri:
KARTE.IN KARTE.IN
3 5
KARTE.OUT KARTE.OUT
4 6

Objanjenje:
Neka je N=3 i karte {1, 2, 3, 4, 5, 6}. Tada je reenje 4.
0. 1. 2. 3. 4.
1 6 1 6 1
2 3 5 4 2
3 -> 5 -> 4 -> 2 -> 3
4 2 3 5 4
5 4 2 3 5
6 1 6 1 6
Zadatak 3. Put do kole

Problem:
Proao je raspust, zima je u jeku, i mali Perica mora ponovo u kolu. Data je pravougaona mapa
dimenzija N M i mali Perica se nalazi u donjem levom uglu P, a kola u gornjem desnom S. On se
kree samo desno ili nagore, nikako dijagonalno, dole ili levo. Na putu do kole mali Perica mora
da se sretne sa svim drugarima koji se nalaze na mapi oznaeni sa D. Kako je sneg mnogo napadao,
mali Perica ne moe da ide po poljima koja su zavejana snegom, na mapi oznaena sa X.
Odrediti broj razliitih puteva kojim Perica moe da doe u kolu, tako da zaobie sve prepreke i
pokupi sve drugare. Dva puta su razliita ako se razlikuju bar u nekom delu puta.

Ulaz:
U prvom redu datoteke skola.in su etiri prirodna broja razdvojenih razmakom: dimenzije table N i
M (1 N, M 100), broj drugara D (1 D 10000) i broj snenih prepreka X (1 X 10000).
U svakom od sledeih D redova stoji par brojeva (A, B) koordinate kua Pericinih drugara.
Koordinata levog donjeg ugla, gde se nalazi Perica je (1, 1). Dalje, slede X redova koji svaki sadri
koordinate snenog nanosa.
U ulaznom fajlu nee biti poklapanja parova koordinata drugara i prepreka. Ni prepreka ni kua se
ne nalaze u gornjem desnom ili donjem levom uglu.

Izlaz:
U jedinom redu fajla skola.out treba upisati broj razliitih puteva od kue do kole. Ukoliko nije
mogue da Perica pokupi sve drugare na traeni nain upisati -1. Garantuje se da e rezultat biti
manji do 231.

Primer:
SKOLA.IN SKOLA.IN
5844 5523
12 14
25 33
35 32
47 24
15 25
22 SKOLA.OUT
27 -1
36
SKOLA.OUT
4

Objanjenje:
Neka je data tabla kao na slici. Tada su sva 4 puta prikazni ispod zvezdicama.

. . . . . . . S .......* .......* ......** ......**


. . . . . . D . ....**** ....**** ....***. ....***.
. . . . D X . . ....*X.. ....*X.. ....*X.. ....*X..
. X . . D . X . .X***.X. .X.**.X. .X***.X. .X.**.X.
P D . . X . . . ***.X... ****X... ***.X... ****X...
Zadatak 4. Drugar Jovica

Problem:
Data je mrea sa N gradova. Mali Perica se nalazi u taki A, a Jovica se nalazi u taki B negde na
mapi. Mali Perica hoe to pre da stigne do Jovice, jer je uo novi vic i jedva eka da ga ispria. On
moe ii peke ili koristiti eleznicu, to je naravno bre nego da hoda. Ali ima novca samo za
jednu kartu, tj. neogranienu vonju dok ne izae iz metroa. Mali Perica moe da ue ili izae iz
voza, samo u nekom od gradova. Pretpostavite da Perica ne gubi vreme pri menjanju vozova i da ne
eka na stanicama.
Va zadatak je da na osnovu njihovih koordinata i postojeih eleznica odredite najkrae vreme za
koje mali Perica moe stii iz A u B. Sve eleznice su prave linije, tako da se vreme rauna po
poznatoj formuli: t = s / v. Ukoliko ima vie puteva iste duine tampati bilo koji.

Ulaz:
U prvom redu jovica.in su dva realna broja v1 i v2 (0 v1 v2 1000). Prvi broj je brzina hodanja,
a drugi je brzina podzemne eleznice. U sledeem redu su koordinate taaka A i B, tj. Perice i
Jovice.
U sledeem redu je je broj gradova N (0 N 200). Zatim slede N redova sa realnim koordinatama
gradova (x, y). U sledeih M (0 M 5000) redova sa parovima brojeva (P, K), to kae da su
gradovi P i K povezani pravom eleznicom. Ulaz se prekida parom brojeva 0 0.

Izlaz:
U prvom redu izlazne datoteke jovica.out treba ispisati minimalno vreme na 5 decimala. U
sledeem redu broj stanica koje mali Perica koristi za prevoz (mogue i nula), a u novom redu i lista
stanica u redosledu kretanja.

Primer:
JOVICA.IN JOVICA.IN
1 100 1 20
10 10 00
10 0 10
4 3
00 22
10 33
90 21
99 12
12 13
13 00
24 JOVICA.OUT
00 1.00000
JOVICA.OUT 0
2.63463
4
4213

You might also like