Задаци и решења за ученике виших разреда основне школе. државно такмичење (децембар, 2018.)

Величина: px
Почињати приказ од странице:

Download "Задаци и решења за ученике виших разреда основне школе. државно такмичење (децембар, 2018.)"

Транскрипт

1 .. godina u Srbiji! 6 Dabar 2018/19. Задаци и решења за ученике виших разреда основне школе државно такмичење (децембар, 2018.)

2 O такмичењу и приручнику Draga deco i poštovane kolege, Hvala Vam na želji, volji i entuzijazmu sa kojim pristupate ovom takmičenju! Ponosni smo na Vas i na činjenicu da se već 6. godinu zaredom družimo. U proteklom periodu na takmičenju je učestvovalo preko takmičara, a na ovogodišnjem školskom nivou, preko Ponovo smo, zajedno, pomerili granice i uključili veći broj dece nego prethodne takmičarske godine! Posebno nas raduje činjenica da se sa nama družite od 1. razreda, pa do vašeg punoletstva i završetka srednje škole. DABAR je postalo TAKMIČENjE UZ KOJE ODRASTATE! Takmičenje Dabar je namenjeno svim učenicima, ne samo talentovanim. Želja nam je, da kroz zabavne zadatke koje ste rešavali na školskom takmičenju 2018/19., ŠTO VIŠE DECE UVIDI DA SE SA INFORMATIČKIM PROBLEMIMA SUSREĆU U SVAKODNEVNOM ŽIVOTU I DA IH JE MOGUĆE SA LAKOĆOM REŠAVATI. Priručnik je namenjen nastavnicima i učenicima kao pomoć pri bavljenju temama i intelektualnim problemima koji su predstavljeni kroz zadatke. Kako deca vole da se takmiče i vole da razmišljaju, naš posao je da ih i tokom godine podstičemo da razvijaju takmičarski duh i radoznalost. Priručnik je i deo riznice Dabar intelektualnih problema, koja se iz godine u godinu uvećava. Pripručnik su pripremili organizatori takmičenja, kao nešto na šta smo ponosni ;). U takmičenje je uloženo mnogo rada i energije, tako da nas posebno raduje što takmičenje postaje sve masovnije i popularnije, ne samo u našoj zemlji već i širom sveta. Trenutno izdanje priručnika je "privremeno". Nakon narednog nivoa takmičenja, našoj riznica zadataka ćemo dodati nove. No, čak i oni će biti veoma brzo odrađeni od strane onih koji vole takve zadatke. Šta onda? Pozivamo vas da pratite naše aktivnosti na sajtu dabar.edu.rs ili na sajtu Međunarodnog takmičenja Dabar bebras.org i da se zajedno sa nama radujete novim zadacima. Uživajte u rešavanju zadataka! Srdačno Vaš, Programski odbor takmičenja Dabar

3 Bodovna tabela Dabarčić R.Br. Zadatak Težina Bodovi 1. Jedan sat, jedan zadatak Lak 6 2. Ostrva i mostovi Lak 6 3. Raspored u sobama Srednje težine 9 4. Beskonačni sladoled Srednje težine 9 5. Reči u selu dabrova Srednje težine 9 6. Sijalice Srednje težine 9 7. Gradnja brana Težak "Yathzee" igra Težak Tamno i olujno Težak Rođendanska proslava Težak U laži su kratke noge Težak Šetnja parkom Težak 12 Mladi dabar R.Br. Zadatak Težina Bodovi 1. Sijalice Lak 6 2. Reči u selu dabrova Lak 6 3. Strelice Srednje težine 9 4. Tamno i olujno Srednje težine 9 5. "Yathzee" igra Srednje težine 9 6. Gradnja brana Srednje težine 9 7. U laži su kratke noge Težak Izgubljeni automobil Težak Jezero dabrova Težak Šifra Težak Pustinja Težak Putarina Težak 12

4 Dabar R.Br. Zadatak Težina Bodovi 1. Gradnja brana Lak 6 2. "Yathzee" igra Lak 6 3. Boj greha Srednje težine 9 4. Pustinja Srednje težine 9 5. Putarina Srednje težine 9 6. Izgubljeni automobil Srednje težine 9 7. Redovi i kolone Težak Robot baštovan Težak Medicinska laboratorija Težak Greška prilikom prijave Težak Najduži lanac reči Težak Uključi Težak 12 Stariji dabar R.Br. Zadatak Težina Bodovi 1. Boj greha Lak 6 2. Pustinja Lak 6 3. Redovi i kolone Srednje težine 9 4. Greška prilikom prijave Srednje težine 9 5. Pokloni Srednje težine 9 6. Uključiti Srednje težine 9 7. Najduži lanac reči Težak Medicinska laboratorija Težak Robot baštovan Težak Dan kapetana Dabra Težak Oprati uniforme Težak Ključne tačke Težak 12 Izbor zadataka za takmičenje i prevod, Programski odbor takmičenja: Milan Rajković (predsednik programskog odbora i prevod zadataka); Suzana Miljković (član programskog odbora i prevod zadataka); Jelena Hadži-Purić (član programskog odbora i prevod zadataka); Bojan Milosavljević (član programskog odbora i prevod zadataka); Marija Andonović Radojević (član programskog odbora i prevod zadataka); Ivica Bekrić (član programskog odbora i prevod zadataka); Saša Jevtić (član programskog odbora i prevod zadataka); Jasmina Dobrić (prevod zadataka); Nemanja Đorđević (prevod zadataka ); Tehnička podrška: Branislav Dolić

5 Zadaci: Jedan sat jedan zadatak... 6 Ostrva i mostovi... 8 Raspored u sobama Beskonačni sladoled Reči u selu dabrova Sijalice Gradnja brana Yahtzee Tamno i olujno Rođendanska proslava U laži su kratke noge Šetnja parkom Izgubljen automobil Jezero dabrova Šifra Pustinja Putarine Redovi i kolone Robot - Baštovan Medicinska laboratorija Greška prilikom registracije na sajt Najduži lanac reči Uključi Pokloni Dan kapetana Dabra Oprati uniforme Strelice Ključne tačke... 64

6 Jedan sat jedan zadatak Dabrovi imaju robota koji može da obavlja mnoge zadatke. Za svaki od zadataka koje radi robot, potrebno je 1, 2, 3 ili više sati. U jednom satu robot može da radi samo na jednom zadatku. Na kraju svakog sata proverava je li dobio novi zadatak: Ako jeste, robot mora odmah početi sa radom na novom zadatku. Ako nije, robot nastavlja da radi na zadatku na kome najduže nije radio. Slika ispod pokazuje primer rada robota u jednom danu. Zadatak-1 je završen u 22:00, Zadatak-2 je završen u 17:00, i Zadatak-3 je završen u 23:00. Pitanje / Izazov Robot je dobio 4 zadatka: Zadatak-1: 5-časovni, dobijen u 8:00 Zadatak-2: 3-časovni, dobijen u 11:00 Zadatak-3: 5-časovni, dobijen u 14:00 Zadatak-4: 2-časovni, dobijen u 17:00 U koliko sati će Zadatak-4 biti završen? Odgovori: A) 20 B) 17 C) 19 D) 18

7 Tačan odgovor je: A) 20 Informatička pozadina Rešenje možemo simulirati koristec i grafikon vremenske linije prema datom pravilu/proceduri. Problem pokušava da predstavi stvarne procese menadžmenta (upravljanja) na osnovu Round Robin Scheduling-a i korišc enja Ganttovog grafikona (aktivnosti prema vremenskoj liniji). Autor: Suryana Setiawan (Indonezija)

8 Ostrva i mostovi Stanovnici ostrva koriste samo jedan uslov prilikom izgradnje mostova: ako je ukupan broj stanovnika dva ostrva veći od izabranog broja, izgradiće se most između ta dva ostrva. Na slici su prikazana četiri izgrađena mosta i šest ostrva kao i broj stanovnika na svakom ostrvu: Pitanje: Koji broj su izabrali? Odgovori: A) 36 B) 42 C) 44 D) 33

9 Tačan odgovor je: A) 36 Za par ostrva povezanih mostom, ukupna populacija prelazi 36 (na primer, = 37). Prag ne može biti niži, npr. 35, jer bi u suprotnom bilo potrebno = 36 i pet mostova. Prag ne može biti veći, npr. 37, jer inače = 37 ne bi trebalo da bude veće od 37, a samo tri mosta biće izgrađena. Informatička pozadina Ostrva i mostovi sasvim prirodno predstavljaju graf, obzirom da su apstraktne strukture podataka koje su pogodne za predstavljanje veze između objekata. Objekti/ostrva se zovu čvorovi ili vrhovi, a veze/mostovi se nazivaju ivicama. Graf sa n čvorova može imati n (n-1) / 2 grana (ako između dva čvora ne postoji više grana). Ponekad je moguće definisati tzv.pragovni graf bez navođenja svih grana grafa. Jedan takav slučaj se dešava kada je moguće odrediti prag grafa, kao što smo uradili za ostrva. U tom slučaju mora se navesti samo n vrednosti. Grafici za koje je to moguće se nazivaju granični grafovi. Naravno, nisu svi grafovi granični! Četiri glavna ostrva bi ostala povezana čak i ako most 25-18, na primer, ne bi bio izgrađen: odgovarajući graf se ne može definisati preko graničnih vrednosti. Da li je grafik optimalan? Zavisi od definicije "optimalnog"! Pošto četiri mosta mogu povezati pet od šest ostrva, rešenje nije optimalno u odnosu na kriterijum maksimalne veze. Autor: Mauro Torelli (Italija)

10 Raspored u sobama Članice kompjuterskog kluba planiraju vikend putovanje. Hotel u kome će one prenoćiti ima sobe koje mogu da prime najviše 6 gostiju. Svaka članica popunjava karticu na kojoj upisuje sa kojim devojčicama želi da bude u sobi a sa kojim ne. U karticu upisuje: (+) sa kojim članicama želi da bude u sobi i (-) sa kojim članicama ne želi da bude u sobi. Kartice su popunile na sledeći način: Predsednica kluba želi da sve članice budu zadovoljne svojim rasporedom po sobama. Pitanje/Izazov Koliko soba je najmanje potrebno da bi sve članice bile zadovoljne svojim rasporedom po sobama? Ponuđeni odgovori: A) 3 B) 4 C) 2 D) 5

11 Tačan odgovor: A) 3 Da bi ispunili sve želje, mogli biste se usredsrediti na pozitivne želje i pridržavali sledećih uputstava: 1. Ako postoji prazna soba, a. onda rasporedite devojčicinu karticu u ovu sobu; b. drugo, rasporedite devojčicinu karticu u sobu u kojoj ova devojčica nije na (-) listi 2. Povucite sve kartice devojčica koji su na (+) listi prve karte u istu sobu. Ako nema više kartice, onda ste ZAVRŠILI. 3. Vratite se na korak 1. Primenom navedene procedurei zaključujemo da je potrebo tri sobe. Ne postoji drugi raspored koji bi ispunio sve želje: Alina mora biti zajedno sa Lilli. Ali Alina (pa samim tim i Lilli) može biti zajedno sa Emma i Zoe; Stoga ona takođe ne može biti zajedno sa Mia, koja mora biti zajedno sa Emma i Zoe. Lara mora ići u njenu sobu, jer ona ne može biti ni sa Lili (pa samim tim i sa Alina) niti sa Emma (a time i sa Mia i Zoe). Modelujmo ovaj problem GRAFOM, Čvorovi grafa su imena devojčica, a grana između dva čvora se formira prema spisku želja devojčica. Kao što vidite, postoji rešenje za dodelu soba. Ovo nije uvek slučaj; na primer, ako bi Alina želela da bude u istoj prostoriji sa Lilli, ali Lili ne bi volela da bude u istoj prostoriji kao Alina, ne bi postojalo rešenje. Informatička pozadina: Kako bi rešila problem rasporeda svih djevojčica, predsednica kluba traži raspored devojčica po sobama koji je u skladu sa svim željama. Takav raspored je rešenje za problem predsednice. Ali kako pronaći rešenje? Jednostavan način je da pogledate sve moguće rasporede, jedan za drugim, i da vidite da li su uslovi zadovoljeni. Ali pošto postoji mnogo mogućih rasporeda, ovo može trajati dosta vremena. Efikasnije je razmatrati uslove od samog starta i pronaći rešenje koje zadovoljava data ograničenja. Problemi sa zadovoljavanjem ograničenja poput problema "devojka-u-sobi-raspored" su prilično poznati u računarstvu. Mogu se pojaviti, kao u ovom zadatku, kada se resursi moraju koristiti bez konflikta (sukoba) - na primer, kada se puno aviona treba rasporediti za korišćenje uzletne i sletne piste na aerodromima. Računarski sistemi, koristeći efikasne algoritme, mogu efikasno rešiti takve probleme. Autor: Wolfgang Pohl (Nemačka)

12 Beskonačni sladoled Dva automata za sladoled koriste četiri ukusa:,,, i Prvi automat koristi sledeća uputstva za proizvodnju sladoleda: Počnite sa praznim kornetom. 1. Odaberi ukus nasumično i dodajte dve kugle tog ukusa. 2. Dodajte jednu kuglu bilo kog drugog ukusa. 3. Ako je postignuta tražena visina sladoleda, zaustavite, u suprotnom idite na korak 1. Drugi automat ne prati nikakva uputstva. Pitanje/Izazov Možete videti samo prvih nekoliko kugli svakog sladoleda. Koji je sladoled zasigurno sa drugog automata? Ponuđeni odgovori: A B C D

13 Tačan odgovor: Tačan odgovor je pod D. Postoji samo jedan kornet sa sladoledom koji ne prati instrukcije. Počinje sa postavljanjem dve kugle istog ukusa zatim se dodaje kugla drugog ukusa ali se zatim dodaju dve kugle različitog ukusa a trebalo bi da slede dve kugle istog ukusa. Odgovori pod A, B i C nisu tačni jer prate instrukcije rada prvog automata. Informatička pozadina: Uzorci u sladoledima ili rečima ili slikama mogu se kreirati kratkim listama instrukcija. Prepoznavanje šablona i prepoznavanje mesta gde se obrasci raskidaju su svakodnevni poslovi za računarske naučnike. Ponekad se ta ponašanja ponavljaju, na primer... je jednostavan obrazac koji samo ponavlja. Ovo je lako sa tačkicama. Ovaj zadatak je nešto teži, jer se obrazac ne ponavlja. Postoji i zamka na kojoj računar (ili bilo koji drugi) naučnik može pasti: instrukcije ponekad izgledaju kao slučajnost. Zapravo, druga mašina povremeno bira slaganje nasumično na način koji izgleda kao da sledi instrukcije. Možete prepoznati uputstva koja su pokvarena. Ali samo posmatrajući, nikada ne možete biti sigurni da će ih pratiti. Srećom, u ovom zadatku smo sigurno znali da je samo jedan od sladoleda iz druge mašine. Autor: Tom Naughton (Irska)

14 Reči u selu dabrova Dabrovska azbuka ima sledeće karakteristike: - ima samo tri različita simbola:, i - Ispravna reč čita se isto spreda i otpozadi. Primeri ispravnih reči prikazani su ispod: Dužina reči je broj simbola koji se koriste. Na primer, dužina reči je 3. Pitanje / Izazov Koji je najveći broj ispravnih reči dužine 3? Odgovori: A) 6 B) 9 C) 18 D) 27

15 Tačan odgovor je: b) 9 Palindrom je reč, fraza, broj ili drugi niz znakova koji se čita isto spreda i otpozadi. Palindromske reči dužine 3 mogu se sastaviti od palindromskih reči dužine 1, spajanjem istih znakova sa obe strane. Reči dužine 1 mogu se sastaviti na sledeći način: iz svake reči dužine 1 možemo sastaviti reč dužine 3 dodavanjem istog znaka na obe strane. Budući da postoje tri znaka, konačan broj reči je 9: ili ili ili ili lii ili Informatička pozadina Palindromi su izrazi (reči, brojevi, rečenice) koji se mogu čitati spreda i otpozadii imaju isto značenje. Pronalaženje i analiziranje simetričnog palindroma u rečenicama, stihovima, brojevima, rečima i muzici može biti jednostavna zabava, ali palindromi se mogu naći i u nizovima DNA. U računarskoj nauci, teorija automatizacije ne samo da pruža jednostavan način za izražavanje pravila koja generišu i proizvode palindrome, već i algoritme potrebne za pronalaženje palindoma u datim podacima. Autor: Dong Yoon Kim (Južna Koreja)

16 Sijalice Bob je električar amater. Povezao je 6 sijalica i 6 prekidača. Svaki prekidač upravlja samo jednom sijalicom, ali ne znamo kojom. Takođe, ne znamo položaj prekidača kada je uključen, a kada isključen. Da bi znao koji prekidač je povezan sa kojom sijalicom Bob eksperimentiše prekidačima. Možete videti rezultate četiri eksperimenta (tj. položaje prekidača i da li su sijalice uključene ili isključene) na sledećim slikama: Pitanje / Izazov Koji prekidač je povezan sa kojom sijalicom? Odgovori: A) 1 C, 2 F, 3 E, 4 A, 5 D, 6 B B) 1 C, 2 E 3 D, 4 A, 5 F, 6 B C) 1 C, 2 F, 3 D, 4 E, 5 A, 6 B D) 1 C, 2 F, 3 B, 4 A, 5 D, 6 E

17 Tačan odgovor je: a) 1 C, 2 F, 3 E, 4 A, 5 D, 6 B Razlika između prve i druge slike je na prekidačima C i E i na sijalicama 1 i 3. Zatim znamo da se mogu povezati (1 - C i 3 - E ili 1 - E i 3 - C ). Između 1. i 4. slike postoje razlike na sijalicama 2, 3 i 5, zatim na prekidačima D, E i F. Znamo da je treća sijalica spojena na prekidač C ili prekidač E. Možemo videti da su sijalica 3 i prekidač E jedini sigurno upareni. Znamo naš prvi par: 3 - E. Između 2. i 3. slike postoje razlike na sijalicama 4 i 5, i prekidačima A i D. Znamo da se 5. sijalica može spojiti sa prekidačem D ili F. Sijalica 5 i prekidač D su upareni. To će ostaviti sijalicu 4 i prekidač A kao jedini preostali par. Imamo drugi par: 5 - D. Imamo treći par: 4 - A. Sada smo identifikovali 5-D kao drugi par, postoji samo jedan par na drugoj slici. Sada imamo četvrti par: 2 F. Sa prve slike imamo par koji se može identifikovati kao sijalica 1 i prekidač C. Imamo 5. par: 1 - C. Jedina preostala sijalica i prekidač su sijalica 6 i prekidač B. Imamo šesti par: 6 - B. Informatička pozadina U računarskim sistemima važno je pratiti kako funkcioniše sistem ili program. Kada radite sa kodom ili sistemima, morate razumeti kako oni funkcionišu, tako da možete menjati ili razviti kod ili sistem za ponovnu upotrebu ili popravku. Otklanjanje grešaka (tj. Pronalaženje uzroka ("bugova" ili nedostatka) koji stvara nepoželjno ponašanje) u kodu ili sistemu takođe je važan proces: da bi pronašli nedostatke i i greške možemo da koristimo male kontrolisane eksperimente. Autor: Zsuzsa Pluhár (Mađarska)

18 Gradnja brana Dabrica želi da izgradi brane kako bi zaštitila svoju kuću od zimske poplave. Na raspolaganju su joj gomile debla kao što je prikazano na slici 1, od kojih želi da napravi brane prikazane na slici 2. Potreban joj je 1 sat da pomeri gomilu debla u vertikalnom pravcu za jedno polje, i 2 sata u horizontalnom pravcu za jedno polje. Pitanje/ Izazov Koliko najmanje sati je potrebno dabrici da napravi brane? Odgovori: A) 16 B) 11 C) 14 D) 12

19 Tačan odgovor je: D) Na slici je prikazano rešenje koje zahteva 12 sati da se izgradi brana. Jasno je da je ovo optimalno ako koristimo samo vertikalne poteze. Ali da li bi horizontalni potezi omogućili bolje rešenje? Zapamtite da horizontalni potez traje 2 sata. Da bi poboljšali naše rešenje, jedan horizontalni potez bi morao da uštedi više od 2 vertikalna poteza. Imajte na umu da postoji jedna gomila na svakoj "koloni". Dakle, ako pomerimo gomilu debla horizontalno, morali bismo da pomerimo još jednu gomilu debla horizontalno, u suprotnom smeru, da ponovo imamo po jednom gomili u svakoj koloni (ili moramo vratiti istu gomilu nazad u prvobitnu kolonu). Takođe možete primetiti da se svaka gomila nalazi na istom broju kvadrata vertikalno i horizontalno od reke. Dakle, izgleda da ćemo teško uštedeti bilo koje vreme horizontalnim potezima. Da bismo pokazali da je predloženo rešenje optimalno, možemo koristiti poslednje posmatranje i ispitati svaku pojedinačnu gomilu delba: na primer, najbrži način pomeranja desne strane na bilo koje mesto na reci je da napravite dva poteza nadole. Ovo važi za sve gomile: naše rešenje pomera svaki od njih u ciljanu poziciju na najbrži mogući način. Nema boljeg načina za bilo koju od gomila. Zbog toga možemo reći da je predloženo rešenje optimalno i da ne postoji brži način izgradnje brana. Informatička pozadina Ovaj zadatak se odnosi na optimizaciju sa ograničenjima. Optimizacija je čest problem koji se rešava u računarstvu (iu stvarnom životu). Srećom, u konkretnom slučaju predstavljenom u zadatku, rešenje se lako može naći i verifikovati zbog veličine problema, pozicioniranja gomila i razlike u vremenu potrebnom za pomicanje gomila. Na primer, ako u jednoj koloni postoje dve gomila, jedna od njih bi svakako morala da se pomeri horizontalno, a pronalaženje optimalnog rešenja bi ubrzo postalo mnogo teže. Generalno, traženje optimalnog rešenja može trajati prilično malo vremena i zahteva napredne tehnike kao što je dinamičko programiranje. Autor: Selcan Kilis, Erinç Karataş (Turska)

20 Yahtzee Yahtzee je igra sa kockicama. U igri se koristi 5 kockice i igrač ima tri bacanja. Posle svakog bacanja igrač može da zadrži kockice koje želi i te kockice više ne baca. Ako sve kockice imaju istu vrednost nakon tri bacanja, igrač dobija "Yahtzee". Na slici ispod prikazano je kako su kockice bacane u jednoj igri: U gore navedenom primeru, igrač je u prvom bacanju dobio sledeće kocke. Igrač je zadržao dve kockice sa najčešćim vrednostima, tj. "4". U sledećem bacanju, igrač je bacio preostale tri kockice i zadržao jednu. U trećem i poslednjem bacanju, igrač je bacio preostale dve kocke i uspeo da dobije dve iste. Igrač je pratio kocke u igri u kojoj je dobio Yantzee nakon tri bacanja. Nažalost, pomešao je svoj spisak sa spiskovima svojih prijatelja. Pod pretpostavkom da je uvek zadržao najčešće zastupljene kockice nakon svakog bacanja, koja od sledećih opcija pokazuje njegovu listu Yantzee? Ponuđeni odgovori: A) B) C) D) Tačan odgovor:

21 B) Posle prvog bacanja, igrač je dobio dve šestice i zadržao ih. U drugom bacanju, igrač je bacio tri kockice i dobio još dve šestice. U finalnom bacanju, igrač je samo bacio jednu kocku i dobio finalnu "6" da završi sa "Yahtzee" koji se sastoji od pet šestica. Informatička pozadina: Mnogi problemi kao što je igrač suočen u zadatku mogu se opisati modelom Ulaz-obrada-izlaz (UOI). Ulaz je niz rezultata iz kocki koji se moraju obraditi kako bi se proizveli kao izlaz da li je "Yahtzee" dobijen ili ne. Drugi primer je procena izraza, npr., "50 * 4". Da bi procenio ovaj izraz, računar najpre čita "50" i shvati da to mora biti broj. Zatim, kada se čita "*", razume se da će se broj pomnožiti sa nečim. Kada pročita završni "4", dobija drugi broj i sada može izvršiti proračun i izvesti rezultat. Autor: Lars-Åke Nordén (Švedska)

22 Tamno i olujno Jana i Robin se igraju sa avionom igračkom. Jedan od njih stoji na malom brdu, a drugi prihvata avion nakon sletanja. Pošto trava nije pokošena, avion koji sleti se vidi samo kada se gleda sa brda, a ne vidi se iz blizine. Jana i Robin su postavili signalnu ploču, na kojoj se ispisuje kod za signalizaciju, osobi koja prikuplja avione: Levo Desno Ka brdu Od brda Na žalost, postoji problem sa ovim kodom kada su komande poslate bez pauze. Ovo bi moglo značiti: levo, ka brdu, levo Ali isto tako bi moglo značiti i: levo, desno, levo, levo Da bi otklonili problem, Jana i Robin prepravljaju kod. Samo jedan od sledećih kodova je dobar. Taj kod nikada ne dozvoljava da niz signala bude shvaćen na dva različita načina. Koji kod je ispravan? A Levo Desno Ka brdu Od brda

23 B C D Tačan odgovor je C Prvo ćemo eliminisati ostale odgovore. Odgovor pod B nije dobar kôd zato što Levo pa desno ima isti signal kao ka brdu. + = Odgovor pod D nije dobar kôd zato što levo uz Od brda je isto kao Ka brdu. + = Malo teže je videti da je i odgovor A netačan. Ovde Levo, a zatim Od brda koristi isti kôd dva puta Desno: + = + Pa kako možemo biti sigurni da je odgovor pod C dobar kôd i da nikada nećemo naći dva različita komandna niza koji rezultiraju istom serijom signala? Imajte na umu da su sve četiri komande sve kodirane kao podignuti signal praćeni nultim ili sniženim signalima. Dakle, čim Robin

24 vidi podignuti signal, ona zna da je započela nova kodna reč. Da dekodira poruku, ona samo treba da broji broj spuštenih signala između naknadnih podignutih signala. Informatička pozadina Kada računari šalju jedni drugima poruke ili komande preko žice ili putem vazduha u bežičnoj mreži, to rade koristeći brze sekvence signala, gde za svaki signal postoje dve mogućnosti (misli se na uključi ili isključuju, ali često su stvari malo komplikovanije), baš kao što Jana i Robin koriste dva različita signala za svoje poruke. Specifičan način kojim se poruke ili komande prevode u signale se zovu (binarni) kod. U ovom slučaju, kod promenljive dužine, jer broj signala koji se koriste za jednu poruku ili komandu ne moraju uvek biti isti. Važno je da primalac šifrirane poruke može prevoditi signale nazad na izvornu poruku bez grešaka. Drugim rečima, morate biti pažljivi kada dizajnirate takav kod. Kodovi koje smo nazvali "dobri" zvanično su poznati kao jedinstveni dekodibilni kodovi. Posebna vrsta jedinstvenog dekodibilnog koda je prefiksni kod. Ovo je kod kod kojih nijedna od važećih reči kodova ne počinje punom sekvencom signala ili simbola druge važeće kodne reči, kao u sledećem primeru: Levo Desno Ka brdu Od brda Prefiks kodovi imaju lepe osobine: oni se mogu učiniti prilično kratkim i lako se dekodiraju. Oni se ne koriste samo u svrhu komunikacije, već se pojavljuju I u nekoliko algoritama kompresije (i u različitim zadacima Dabra). Autor: Nils Mak, Kris Coolsaet (Belgija)

25 Rođendanska proslava Dabar je prijatelj sa svim životinjama. Na žalost, neke životinje se međusobno i ne druže. Zec nije prijatelj sa lisicom, ali je prijatelj sa medvedom. Veverica nije prijatelj sa medvedom, ali je prijatelj sa lisicom. Sova je prijatelj sa irvasom, ali nije prijatelj sa rakunom. Irvas nije prijatelj sa jelenom i ježom. Rakun je prijatelj sa zecom, ali nije sa lisicom. Dabar želi da proslavi svoj rođendan i rasporedi dva stola tako da životinje koje su prijatelji sede za istim stolom. Pitanje/Izazov Na koji način će Dabar rasporediti svoje prijatelje?

26 A) B) C) D)

27 Tačan odgovor: Tačan odgovor je pod A) Irvas nije prijatelj sa Jelenom i Ježom. Srećom, Jelen i Jež su prijatelji, tako da možemo smestiti Irvasa za jednim stolom (recimo, sto 1) i Jelena i Ježa za drugim stolom (recimo, sto 2). Sova je prijatelj sa Irvasom tako da mogu sedeti zajedno za stolom 1. Sova nije prijatelj sa Rakunom, zato će Rakun sedeti za stolom 2. I Rakun nije prijatelj sa Lisicom, zato će Lisica sedeti za stolom 1. Do sada smo uspeli da smestimo šest životinja na dva stola, tako da među njima neće biti svađa. Nastavimo dalje, Veverica je prijatelj sa Lisicom, zato smestimo Vevericu za sto 1. Rakun je prijatelj sa Zecom, zato smestimo Zeca za sto 2. Na kraju, Zec je prijatelj sa Medvedom, zato smestimo Medveda za sto 2. Informatička pozadina Ovaj problem se najčešće nalazi u stvarnom životu: grupisanje elemenata skupa u podskupima sa vezama između 2 elementa (u našem slučaju 2 životinje koje nisu prijatelji ili jesu): prvi element pripada prvom setu i drugi element pripada onom drugomi. Ovakve probleme se obično rešavaju posmatrajući njegov "grafikon", sliku u kojoj postoje "čvorovi" povezani sa "ivicama": problem je pronaći da li se graf može smatrati bipartitivni, tj. Čvorovi grafa se mogu podeliti u dva disjunktna skupa U i V tako da svaka grana grafa povezuje čvor skupa U samo sa čvorovima iz skupa V. Autor: Laura Ungureanu, Corina Vint (Rumunija)

28 U laži su kratke noge Jednog lepog dana Maja, David, Iva i Marko igrali su fudbal u blizini kuće nastavnice Ane. Na žalost, neko od njih je razbio Anin prozor. Nastavnica Ana želi da zna ko je to učinio. Nastavnica jako dobro poznaje svoje učenike, njih troje uvek govore istinu, ali nije sigurna u četvrtog. Učenici su rekli: Marko: Ja nisam razbio prozor. Iva: Marko ili David su razbili prozor. Maja: David je razbio prozor. David: Majo ti lažeš! Pitanje / Izazov Ko je razbio prozor? Odgovori: A) Maja B) David C) Iva D) Marko

29 Tačan odgovor je: B Prvo što primećujemo jeste da obe izjave Maje i Davida ne mogu biti istinite, ili obe biti lažne. Stoga, jedno od njih dvoje govori istinu, a drugo ne. Postoje dva različita, podjednako ispravna načina na osnovu kojih možemo ovu tvrdnju da dokažemo. Važno je znati da oba načina postoje Način (a) Ako Maja govori istinu, onda jedino David laže. (b) Ako David govori istinu, onda Maja, Iva i Marko lažu, što je nemoguće jer u grupi može postojati samo jedan lažov. Iz ove dve mogućnosti (a) i (b) proizilazi da je David razbio prozor Način Problem bi mogli da rešimo i na sledeći način: (a) Ako Maja laže kada kaže: David je razbio prozor, onda to znači da ostali govore istinu. (Mi to znamo zato što nastavnica Ana poznaje svoje učenike i zna da troje od njih uvek govore istinu). U tom slučaju, Marko govori istinu kada kaže da on nije razbio prozor, a i Ivina izjava potvrđuje Markovu tvrdnju. Ali, to je u suprotnosti sa Davidovom izjavom, što znači da to ne može biti tačan odgovor. (b) Ako David laže, to znači da ostali govore istinu. U tom slučaju, Marko nije razbio prozor, Ivina izjava znači da je David razbio prozor, i Maja kaže isto, tako da je ovo tačan odgovor. Iz ove dve mogućnosti (a) i (b) proizilazi da je David razbio prozor. Informatička pozadina Teorijsku osnovu logičke algebre, koja je temelj svih računarskih programa, postavio je George Boole ( ). Osnovni element logičke algebre je logična izjava. Za svaku izjavu može se nedvosmisleno tvrditi da li je istina ili laž. Istinita izjava: istina, ili eng. true, T ili 1. Lažna izjava: laž ili eng. false, F ili 0. Izjave se mogu međusobno kombinovati u logičkim terminima u kojima se izjave nazivaju operandi, kakve se operacije obavljaju između operanada, govori nam operater. Osnovna logička operacija sastoji se od jednog ili dva operanda i jednog operatora, dok složena logička operacija se sastoji od osnovnih logičkih operacija. Statusna tablica (tablica istine) izražava odnose između operanada zavisno od logičke operacije, odnosno, na osnovu verodostojnosti svih izjava uključenih u operaciju, određuje se njena verodostojnost. Budući da se računar sastoji od elektroničkih sklopova koji razlikuju samo dva stabilna stanja, načela booleovske algebre (operacije, operandi i pravila logičkog odnosa) primenjuju se pri izradi i analizi rada digitalnih računala. Autor: Sanja Pavlovic Šijanović (Hrvatska)

30 Šetnja parkom Ovo je mapa parka: Zeleni krugovi sa slovima predstavljaju stabla, a braon linije su staze između njih. Imajte na umu da se neka slova koriste za označavanje više od jednog stabla. Šetnja od stabla F do stabla B biće opisana kao F D E C A B. Dve porodice su šetale parkom. Šetnja prve porodice bila je: B A A A C E D E E D A. Šetnja druge porodice bila je: F D C D A E A D E D A. Pitanje / izazov Pretpostavimo da su obe porodice počele šetnju istovremeno i da hodanje od jednog stabla do drugog stabla traje isto vreme. Koliko puta su se dve porodice susrele kod nekog stabla? Ponuđeni odgovori: A) Jednom B) Dva puta C) Tri puta D) Nisu se srele

31 Tačan odgovor je: D) Nije dovoljno pronaći isto slovo na istoj poziciji (tj. Istovremeno) tokom šetnje, jer isto slovo može označiti drugo stablo. Na primer, obe porodice su završile šetnju kod stabla označenom slovom A, ali ako pratimo obe šetnje korak po korak onda možemo primetiti da su zapravo završili šetnju kod različitih stabla. Imajte na umu da možemo lako pratiti svaki korak svake porodice jer su,,susedi svakog stabla (stabla koja je povezana sa njim stazom) uvek označene različitim slovima. Ali da paralelno pratite dve šetnje nije tako lako (ali je moguće). Dakle, hajde prvo da pratimo šetnju druge porodice (počevši od F, obeleženo plavom bojom) i broj posećenih stabla i vremena kada su ga posetili (plavi brojevi 1 do 11). Onda ćemo ispratiti na sličan način drugu porodica koja šeta crvenom bojom i crvenim brojevima. Dve porodice bi se srele kod istih stabala samo ako je to stablo numerisano istim crvenim i plavim brojem. Ali na našoj slici ne možemo videti takva stabla. Imajte na umu da postoje samo dva stabla koje obilaze obe porodice, pa se možemo usredsrediti samo na njih. Stablo D (najviše levo u parku) posetila je prva porodica samo u vreme 7 i druga porodica u vremenu 2, 4, 8 i 10. Stablo E (onaj najbliže krajnjem D) posetila je prva porodica u vremenu 6 i 8, ali druga porodica samo u vremenu 9. Informatička pozadina Računari i programeri često koriste grafove (a zatim govore o vrhovima i ivicama umesto stabala i staza koji ih povezuju). Teorija grafova je važan i zanimljiv deo matematike i računarstva. Obe ove nauke ga koriste na svoj način u nešto drugačije svrhe. Još jedna zanimljivost ovom zadatku je predstavljanje šetnja parkom. Uprkos činjenici da su neka od stabla (vrhova) označene istim slovom, šetnje koje počinju od B ili F mogu se opisati nizom slova. To znači da jedan niz slova opisuje samo jednu šetnju. To je zato što su,,susedi svakog stabla (susedi stabla K su stabla koja su direktno povezana sa K stazom) uvek označena različitim slovima. Dakle, ako znamo gde smo u nekom trenutku šetnje i vidimo sledeće slovo onda nema sumnje koje stablo treba da posetimo.. Autor: Andrej Blaho (Slovačka)

32 Izgubljen automobil Loša sreća! Autonomni električni automobil nije se vratio kući, već je ostao negde u gradu. Malo pre nego što se baterija u potpunosti istrošila, automobil je našao mesto za parkiranje i poslao kući poziciju nekih objekata (ali ne svih) u blizini koji su registrovani njegovim senzorima. Svaki objekat je predstavljen sa dve vrednosti: 1. ugao (u odnosu na senzor na vrhu automobila, ugao od 0 0 je ispred automobila (pogledajte sliku) i 2. udaljenost objekta od senzora automobila U primeru na slici automobil šalje sledeće podatke: [(0, 10), (90, 5), (180, 4)] Pitanje/Izazov Izgubljeni automobil poslao je ovaj prikaz svoje fizičke okoline: [(0, 5), (90, 4), (180,5), (270,12)] Koji automobil na mapi ispod je izgubljeni automobil?

33 Ponuđeni odgovori: A) Plavi automobil B) Crveni automobil C) Žuti automobil D) Sivi automobil

34 Tačan odgovor: Crveni automobil (u sredini desne strane na mapi) je izgubljeni automobil. Izgubljeni automobil ima objekat od 5 metara ispred njega, objekat od 4m na desnoj strani, objekat 5m iza njega i objekat sa udaljenosti od 12m daleko od njegove leve strane. Sivi automobil nije izgubljeni automobil, jer su objekti sa njegove desne i leve strane jednako blizu. Žuti automobil nije izgubljeni automobil, jer je objekat iza njega (zeleni krug) mnogo bliže od objekta ispred njega (sivi blok). Plavi automobil nije izgubljeni automobil, jer je objekat ispred (zeleni krug) mnogo bliže od predmeta koji stoji (mali crni krug). Crveni automobil je izgubljeni automobil: predmeti ispred i iza su jednako blizu, a objekat sa njegove desne strane (sivi blok) je mnogo bliže od objekta sa njegove leve strane (plavi automobil). Informatička pozadina Autonomni automobili koriste metodu LIDAR (detekcija svetlosti i rangiranje) za skeniranje svog okruženja, uključujući i lasersku tehnologiju. Njihov navigacioni softver stvara složen 3D model svih objekata na udaljenosti od nekoliko stotina metara. Nasuprot tome, model u ovom zadatku je veoma jednostavan i beleži samo najbliže objekte. Generalno, model je apstrakcija stvarnosti i uključuje samo one aspekte realnosti koji su važni za određenu svrhu. U slučaju autonomne vožnje, model se može koristiti za sprečavanje sudara. Za tu svrhu je potrebna relativna lokacija okolnih objekata. Drugi aspekti poput boje nisu bitni i mogu se ignorisati. Autor: Michael Weigend (Nemačka)

35 Jezero dabrova Dabrovi žive u dolini okruženoj planinama. U dolini postoji jezero. Jezero je okruženo stenama i poljima sa drvećem. Dabrovi vole komfor i žele da sva polja sa drvećem pretvore u jezero. Dabrovi svakog dana u jezero mogu da pretvore, samo ona polja drveća sa kojima se jezero graniči. Na primer, nakon prvog dana, tri polja sa drvećem će biti pretvorena u jezero. Polja sa stenama se ne mogu poplaviti. Pitanje / Izazov Posle koliko dana će sva polja sa drvećem postati jezero? Odgovori A) 4 B) 5 C) 6 D) 7

36 Tačan odgovor: Tačan odgovor je 6 dana Brojevi na slici ispod pokazuju poplavljena polja nakon odgovarajućeg broja dana. Polja pored jezera označena su sa 1. Zatim se sva neoznačena polja sa drvećem pokraj polja označena sa 1 označavaju sa 2. Ovaj se postupak nastavlja dok se ne označi sva polja sa drvećem. Kao što vidimo gore, poslednje polje sa drvećem će biti poplavljeno nakon 6 dana. Informatička pozadina Računarski naučnici proučavaju različite vrste algoritama. Algoritam je niz koraka koji rešavaju problem. Ovaj zadatak pokazuje algoritam pretrage u širinu koji se koristi za skeniranje područja podijeljena na delove. Ovo skeniranje koristi pretragu u širinu pristup (BFS) pristup. BFS algoritam počinje u polju zvanom koren.zatim, u svakoj iteraciji posetiće se svako polje koje je susedno prethodno posećenim poljima. Posećena polja se najčešće čuvaju u strukturi podataka koja se zove red. Politika opsluživanja reda je FIFO i podseća na red za čekanje ispred kase. Prvi član reda je prvi elemant koji napušta red. Autor: Valentina Dagiene (Litvanija)

37 Šifra Roni ima pećinu u kojoj skriva sva svoja blaga. Na žalost, on je zaboravio šifru za alarm (trocifren broj). Roni je očekivao da to može da se dogodi, zato je sebi napisao sledeća uputstva: Uputstvo 1: Samo jedna od ovih cifara je tačna, ali je na pogrešnom mestu; Uputstvo 2: Dve od ovih cifara su tačne, ali su na pogrešnom mestu; Uputstvo 3: Samo jedna od ovih cifara je tačna, ali je na pogrešnom mestu; Uputstvo 4: Samo jedna od ovih cifara je tačna i nalazi se na ispravnom mestu. Pitanje / Izazov Koja je tačna šifra za alarm? Odgovori: A) B) C) D) 9 7 4

38 Tačan odgovor je: a) Na osnovu Uputstva 1 i Uputstva 2, šifra može da sadrži brojeve sa sledeće liste: Na osnovu Uputstva 3, 8 je jedini broj koji je zajednički sa prethodnom listom ( ). Pozicija broja 8 mora biti treća pozicija, zato što Uputstvo 1 i Uputstvo 2 nam govore da je broj 8 na pogrešnoj poziciji. Sada znamo da je broj 8 ispravan i na ispravnoj je poziciji. Na osnovu Uputstva 1 i Uputstva 4 postoji jedan tačan broj, u Uputstvu 1 je na pogrešnoj poziciji, a u Uputstvu 4 na tačnoj poziciji. Jedini zajednički broj je 7, a Uputstvo 4 nam govori da se taj broj (7) nalazi na tačnoj poziciji. Uputstvo 2 nam govori da postoji jedan tačan broj, a jedini preostali broj je 4. Na osnovu toga, tačna šifra je Informatička pozadina Ovaj zadatak povezan je sa logikom. Uputstva su logička ograničenja koja tačan odgovor mora da ispuni. Poznavanje ovih uputstava je isto kao i da znate samu lozinku (šifru). Važno je napomenuti da je u ovom slučaju rešenje jedinstveno, ovo nije dobar način da sakrijete lozinku (šifru). Svako ko ima uputstva, može da sazna i vašu lozinku. Autor: Averbuch Haim (Izrael)

39 Pustinja Dabar Milan ide na putovanje oko sveta. Posle mnogih zanimljivih pejzaža, dospeo je u pustinju. Polazi od polja A1 u gornjem levom uglu i želi da ode do polja G7 u kome se nalazi palma u donjem desnom uglu. Može da se pomera levo, desno, gore ili dole (ne dijagonalno) i ne može dva putа preći preko istog polja. Ne može proći ni preko polja sa kaktusom. Neka od polja sadrže vodu i jabuke i on ih može sakupiti na putu. Kada se kreće sa jednog polja na drugo, Milan troši jednu kap vode i jednu jabuku. Ako nema vode ili jabuke, više se ne može pomeriti. Pitanje / Izazov Koja putanja omogućava Milanu da dođe od polja A1 do polja G7? Odgovori: A) A1,B1,C1,C2,C3,B3,B4,B5,B6,C6,C7,D7,E7,E6,F6,G6,G7 B) A1,B1,C1,C2,C3,B3, A3,A4,B4,B5,B6,C6,C7,D7,E7,E6,F6,G6,G7 C) A1,B1,C1,C2,C3,B3,B4,B5,B6,A6,A7,B7,C7,D7,E7,E6,F6,G6,G7 D) A1,B1,C1,C2,C3,B3,B4,B5,B6,C6,C7,D7,E7,F7,G7

40 Tačan odgovor: Na slici je prikazana jedina tačna putanja: A1,B1,C1,C2,C3,B3,B4,B5,B6,C6,C7,D7,E7,E6,F6,G6,G7 Ispod možete videti primer sa ispravnom putanjom u žutoj boji: Na svakom polju ima sledeći broj jabuka i kapi vode, nakon konzumiranja istih da bi došao do njega: A1: 3 kapi i 1 jabuka A2: 2 kapljice i 2 jabuke A3: 1 kap i 1 jabuka B3: 1 kap i 2 jabuke C3: 1 kap i 1 jabuka D3: Odredište! Informatička pozadina DFS (pretraga grafa u dubinu) - pretražite graf preko svih čvorova "u dubini". Ako se ne pronađe ispravna staza, ona se vraća na prethodne čvorove i proverava drugu stazu. Multitasking je sposobnost osobe / računara da izvrši više zadataka istovremeno. Pronalaženje rešenja zahteva istovremeno razrešavanje procesa (programa u izvršenju). Autor: Mihaela Kelava (Hrvatska)

41 Putarine Saša je odlučio da vozi od Beograda do Kruševca. Na mapi ispod, krugovi sa slovima predstavljaju gradove, a linije su dvosmerni putevi. Putevi imaju raskrsnice na ukrštanjima. Brojevi pored svakog puta predstavljaju iznos putarine koju automobili moraju da plate svaki put kad uđu na put. Automobili mogu da menjaju putanju (put ) na raskrsnicama, ali moraju da plate punu putarinu za put na koji se uključe. Npr. da bi vozio od grada B do C možeš voziti putem 18 i putem 6 tako da platiš putarinu 24 = Pitanje / izazov Koliku putarinu bi trebalo Saša najmanje da plati da bi vozio od Beograda do Kruševca? Ponuđeni odgovori: A) 41 B) 48 C) 33 D) 39

42 Tačan odgovor je: A) 41 Najjeftiniji put je prikazan na slici. Da bi se dokazalo da je ovaj put optimalan možete uporediti opcije na sledeći način. Prikazana staza ima putarinu 41. Hajde da pokušamo da nađemo jeftiniju stazu. Prvo očigledno je da staza sadrži put A Beograd sa putarinom 13. Potrebno je naći stazu od A do Kruševca koja je jeftinija od = 28. Drugo, očigledno je da treba doći do Kruševca ne putem B Kruševac zato što je tu putarina već 23 i nemoguće je naći stazu od B do A koja je jeftinija od = 5. Dakle dolazimo do Kruševca putem D Kruševac sa putarinom 6, i zato treba naći stazu od A do D koja je jeftinija od 28 6 =22. Staza od A B ne bi trebalo da ima više od 3 puta zato što najjeftiniji put ima putarinu 6 i zato 4 puta će dati putarinu barem 6x4 = 24. Prvi put koji možemo videti da bi izašli iz A je A-B. Vodi nas do mnogo skupljih rešenja jer ćemo koristiti veoma skupe puteve sa putarinama 23 i 18. Isti argumenti važe put A-F, zato što je ovaj put veoma skup. Ako koristimo put A G koristićemo najmanje svega = 23 što je više od 22. I na kraju konačno ako idemo putem A-C možemo postići optimalnu putarinu. Informatička pozadina U teoriji grafa, problem najkaraće staze je problem nalaženja staze između dva čvorišta na grafu takav da zbir njihovih težina njihovih konstantnih ivica ( krivina ) je umanjen. Ćvorovi grafa međusobno su povezani raskrsnicama krivine su povezane delovima puta. Svaki vredi koliko njegova putarina, vreme, prometno opterećenje. Problem nalaženja najkraće staze između dve raskrsnice na mapi puteva sa takvim putarinama koje ne zavise od razdaljine koju si prešao putem mogu biti svedene na klasičan problem najkraće staze. Prikazivajući raskrsnice koristeći dodatne čvorove i krivine. Ovaj problem se može rešiti uz pomoć Dijkstra's algoritma Autor: Ali Abedini (Iran)

43 Redovi i kolone Na slici ispod, sa leve strane je data slika šahovske table sa 4 žetona. Sa desne strane slike, tabla je predstavljena dijagramom na sledeći način: Svaki žeton koji je postavljen na tablu (sa upisanim slovom A, B, C,...) je na dijagramu predstavljen kružićem (sa istim upisanim slovom kao na tabli). Ako su dva žetona table u istom redu ili istoj koloni, onda su njima odgovarajući kružići na dijagramu povezani direktno linijom.(nemojte docrtavati linije na dijagramu.) Na slici levo i desno, slova u žetonima su upisana samo radi jasnoće i kako biste mogli proveriti ispravnost dijagrama. Data je šahovska table i šest žetona na njoj. Pitanje / izazov Koji od sledeća četiri dijagrama odgovara datoj šahovskoj tabli? Ponuđeni odgovori: Tačan odgovor je: A Autor: Kris Coolsaet (Belgija)

44 Robot - Baštovan Dabar Anđelo kupio je robota kako bi mu pomogao da posadi mala stabla. Programski jezik robota se sastoji od sledećih komandi: Start: Uključi robota. Forward(X): Pomeri robota napred za X metara. Backward(X): Pomeri robota unazad za X metara. Left(X): Zaokreni robota X stepeni ulevo. Right(X): Zaokreni robota X stepeni udesno. Plant: Posadi malo drvo. Repeat X {Komanda}: Ponovi komandu u zagradi X puta. Stop: Isključi robota. Postoji 16 mesta za drveće koje se nalaze na obodu polja. Svaka strana polja je duga 8 metara, a uzastopno drveće će se razdvojiti na razdaljini od 2 metra. Robot počinje na početnoj poziciji gledajući u pravcu strelice. U početku je robot isključen i mora se isključiti nakon što završi posao. Kada se posadi drvo, na tom mestu nema ničega što može da ometa robota.. Pitanje/Izazov Koji od sledećih programa će omogućiti robotu da posadi drveće kao na slici?

45 Ponuđeni odgovori: A) B) c) D) Start Repeat 4{ Repeat 4{Plant, Forward(2)}, Right(90)} Stop Start Repeat 4{ Repeat 4{Plant, Forward(2)}, Left(90)} Stop Start Repeat 4{ Repeat 4{Forward(1), Plant}, Right(90)} Stop Start Repeat 4{ Repeat 4{Forward(2), Plant}, Left(90)} Stop

46 Tačan odgovor je pod A. Start Repeat 4{ Repeat 4{Plant, Forward(2)}, Right(90)} Stop Robot će početi od Repeat 4{Plant, Forward(2)} tako da će posaditi prva 4 stabla iznad početne pozicije. Zatim će se zaokrenuti udesno za 90 Right(90) Ponoviće te komande 3 puta prema Repeat 4. Odgovor C nije tačan zato što Forward(1) neće dovesti robota na odgovarajuću daljinu da bi došao do mesta gde treba da posada sledeće drvo Odgovori B and D nisu tačni zato što usmeravaju (okreću) robota ulevo van polja. Informatička pozadina Zadatak je o razumevanju algoritama koji se implementiraju u računarskim programima. Ovde, algoritam uključuje niz koraka koje robot treba da uradi da dovrši željeni zadatak. Razmišljanje o takvim sekvencama koraka je važna veština za programiranje robota. Zapazite takođe da postoji petlja unutar druge petlje, što se zove ugnežena petlja. Normalno, petlja se koristi za učestale stvari. Kada imate običan niz ili samo jednu dimenziju, koristićete jednostavnu petlju. Ali u slučaju rada u dve dimenzije (kao u matrici), biće vam potrebna ugnežena petlja. Autor: Demetris Hadjipantelis (Kipar)

47 Medicinska laboratorija Dijagnostički uređaj u medicinskoj laboratoriji mora više puta da protrese (promućka) uzorke uzete od pacijenata. Uređaj funkcioniše u skladu sa kompjuterskim programom, koji je napisan na numerisanim linijama. Uređaj čita programsku liniju po liniji. Uvek čita jednu liniju i odmah izvrši. Ako linija sadrži komandu, idi na X, uređaj prelazi na liniju X i nastavlja čitanje i izvršavanje. Program može čuvati broj A, dodati 1 na broj koji je sačuvan u A, i uporedite njegovu vrednost sa drugim brojem. Pitanje/Izazov Koliko puta će uređaj protresati uzorke prema sledećoj dijagnostičkoj proceduri? 1 postaviti A na 0 2 dodajte 1 u A 3 idi na 6 4 ako je A jednako 60 idi na 8 5 popostaviti A na 0 6 dodati 1 u A 7 idi na 2 8 ponovi A puta (protresi uzorak) 9 kraj Ponuđeni odgovori: A) Uzorci nikada neće biti protreseni. B) Uzorci će se jednom protresati. C) Uzorci će biti protreseni 60 puta. D) Dijagnostička procedura neće prestati da trese uzorke

48 Tačan odgovor: Program uvek skače iz linije 3 do 6 i iz redova 7 do 2. Osim u početku, program posećuje samo redove br. 2, 3, 6, 7. Uputstvo da se protrese uzorak je na liniji br. 8, koja nikada nije protrešen. To znači da uređaj nikada neće protresti ništa prema programu, pa je tačan odgovor C. Štaviše, instrukcija na liniji br. 9 nikada nije izvršena, pa se program nastavlja zauvek. Informatička pozadina: Prvi programski jezici, razvijeni 40-ih i 50-ih godina, izgledali su kao ovaj u našem zadatku i nazivani su mašinski jezici. Programske linije su numerisane i posebne komande, poznate kao instrukcije, koristile su za skakanje do druge linije kada je trebalo preskočiti sledeću. Bilo je teško čitati ove programe i pronaći greške, ali ih je lako napraviti. Mogućnost da se pogreši takvih programskih jezika je bila razlog zašto su moderni programski jezici razvijeni počevši od pedesetih. Ovi savremeni jezici nisu linijski orijentisani i sadrže strukture poput petlji, procedura i selekcija, umesto da koristite instrukcije. Autor: Jiďż ďż Vanďż ďż ek (Češka)

49 Greška prilikom registracije na sajt Sara je napravila sajt za deljenje umetničkih projekata. Dizajnirala je sistem prijave pomoću koga korisnici sajta prvo kreiraju naloge sa jedinstvenim STUDENTSKIM ID (Studentskom identifikacijom). Sledeći dijagram prikazuje korake njenog dizajna: Pitanje / Izazov Sara je uvidela da treba rotirati (zameniti) pozicije dva koraka da bi proces registracije bio uspešan. Koje korake treba rotirati? Ponuđeni odgovori: A) Rotiraj treći i peti korak B) Rotiraj četvrti i šesti korak C) Rotiraj peti i šesti korak D) Rotiraj treći i šesti korak

50 Tačan odgovor je: Novi tačan je valjda B) A) Rotiraj četvrti i šesti korak Pravi pristup je kreiranje naloga samo nakon prijema potvrde (otkrivanje klika na link za potvrdu koji se šalje datoj e-pošti). Tako treba rotirati četvrti i šesti korak, kako je prikazano u nastavku: Informatička pozadina Motivacija ovog zadatka uvodi sistemski dizajn koji je proces definisanja i razvoja informacionih sistema koji zadovoljavaju specifične zahteve korisnika. Jedno od načina dizajna sistema je primena,,kontrolne logike. Ona reagije na naredbe korinsika i ona sama deluje tako da obavlja automatizovane zadatke koji su struktuirani u programu, čime upravlja delovanjem programa. Analiza tokova izvršavanja pomaže u detektovanju grešaka dizajniranog sistema, tj. pronaći i rešiti nedostatke ili probleme u računarskom programu koji sprečavaju njegov tačan rad. Međutim, obratite pažnju da u paralelnom okruženju ovo rešenje neće funkcionisati jer dva učenika mogu istovremeno da zahtevaju istu identifikaciju, što dovodi do nastanka uslova trke. U tom slučaju, kako bi se ublažio problem, ceo proces je podeljen na podproces: (i) uspostavljanje komunikacionog kanala ( , telefon, SMS,...); i (ii) postavljanje korisničkog imena (tj. STUDENTSKOG ID). Svrha dijagrama je da pomogne procesu dizajna, a ne u potpunosti opisati proceduru registrovanja. Autor: Hamed Mohebbi (Iran)

51 Najduži lanac reči Dabrovi igru igru lanac reči. Igra počinje tako što jedan dabar kaže reč. Drugi mora početi svoju reč koja počinje poslednjim slovom prethodne reči. Tada prvi dabar pronalazi novu reč (koja do tada nije korišćena) i tako dalje. Na žalost oni ne znaju mnogo reči. Zapravo, oni mogu nacrtati ceo svoj rečnik ovako: Pitanje/Izazov Koji je najveći mogući broj reči koji se može reći u jednoj igri? Ponuđeni odgovori: A) 6 B) 7 C) 8 D) 9

52 Tačan odgovor je: Dabrovi mogu iskoristiti najviše 8 reči u jednoj igri. (pod c) Primer: lockjaw-wool-lumber-racquetball-log-gnaw-willow-wood Možete li naći jos jednu igru iste dužine? Dobro je imate primer. To znači da možemo biti sigurni da jedna igra može koristiti najmanje 8 reči. Ali još uvek ne znamo da li je moguće koristiti svih 9! Međutim, to bi značilo korišćenje svih reči u rečniku. Sada razmotrite reči wood i wind. Ne postoji reč koja počine sa w, pa ako se bilo koja od ovih reči koristi, ona mora postati poslednja reč u igri. Ali ne može biti 2 poslednje reči. Zbog toga ne možemo koristiti svih 9 reči u jednoj igri. Informatička pozadina Ovaj zadatak zahteva da razumete pravila (kako igrati lanac reči, jasna i pratična predstava podataka (grafik), a zatim pronaći optimalno rešenje u datom sistemu (rečnik). Sve su to načini na koji informatičari provode svoje dane. Sa dodatnim znanjem iz informatike, možete prepoznati problem kao traženje najduže staze u usmerenom grafu. Blisko je povezano sa Problem trgovačkog putnika ( ali poznato kao i problem za sebe. ( Informatika nam govori da pronalaženje najduže igre za veće rečenice (zanemarite to da znate hidjade reči!) nije izvodljivo, potrebno je dosta vremena čak i sa najboljim algoritmima do sada. Možda možeš da nađeš bolju ideju? Autor: Dan Lessner (Češka)

53 Uključi Na slici je prikazana mreža prekidača i sijalica. Kada koristite bilo koji prekidač, tri sijalice povezane na njega menjaju svoj status: isključene počinju da svetle, uključene prestaju da svetle. Pitanje/ Izazov Uključite sva svetla! Kojim redosledom moramo da koristimo prekidače, da bi na kraju sve sijalice bile uključene? Ponuđeni odgovori: A) A, B, C, G B) A, D, C, G C) A, E, C, G D) D, F, G, A

54 Tačan odgovor je: A) A, B, C, G Prekidači A, B, C, G mogu se koristiti bilo kojim redosledom da bi uključili sve sijalice. Može biti korisno razmišljati unazad od željenog konačnog stanja mreže. Da bi poslednji prekidač uključio tri sijalice, ove sijalice moraju biti isključene pre toga. Stoga, u početku moramo isključiti nekoliko sijalica. Pomoću prekidača A i B, G, a zatim sijalice 1, 2 i 3 su isključene. Nakon toga svetli samo sijalica 5. Sada, prekidač C i sijalica 7 mogu se koristiti za uključivanje svih ostalih sijalica. Da biste našli tačan odgovor, nekoliko svojstava mreže mogu Vam pomoći: 1. Korišćenje dva puta (ili čak i više puta...) prekidača ne pomaže: svaka druga upotreba istog prekidača poništava prvu; 2. Učinak korišćenja bilo kojih prekidača X i Y (u ovom redosledu) jednaka je korišćenju Y pre X. Dakle, broj kombinacija mogućeg redosleda upotrebe prekidača je ustvari ograničen. Takođe, zaključujemo da postoji 2 7 =128 različitih, mogućih kombinacija kada koristimo 7 prekidača. Važno je napomenuti, da bilo koje početno stanje odgovara jednoj od ovih 128 kombinacija. Informatička pozadina U mnogim zadacima tačno znamo cilj, a znamo i početno stanje. U ovom zadatku, ciljno stanje je ono sa svim sijalicama uključenim, a početno stanje je ono sa sijalicama 3, 5 i 7 uključenim i svim ostalim isključenim. U ranim danima "Veštačke inteligencije", rešavanje problema računarskim sistemom često je bilo razumevano kao traženje niza akcija od početnog stanja do cilja. Takva perspektiva ima posebno smisla ako postoji konačan skup mogućih akcija i konačan skup elemenata koji se mogu manipulisati tim akcijama. Za realizaciju ovog procesa pretraživanja razvijene su mnoge tehnike i strategije. Na primer "Analiza krajnjih vrednosti (eng. Means-ends analysis)", bira akciju koja umanjuje razliku između trenutnog stanja i ciljanog stanja. Međutim, u ovom zadatku videli smo da bi bilo korisno i tražiti akcije koje tranformišu neko drugo stanje u ciljano stanje. Pretraživanje od početnog stanja i cilja naziva se Dvosmerno pretraživanje (eng. Bidirectional search).. Autor: Wolfgang Pohl (Nemačka)

55 Pokloni Dijagram prikazuje prijateljstva među decom iz susedstva. Dva deteta su jedan drugome prijatelj samo ako su njihova imena povezana linijom. Deca planiraju zabavu. Za svaki par prijatelja, samo jedan od njih treba da kupi poklon onom drugom. Dijagram prikazuje koliko će poklona moći dati svako dete. Pitanje / Izazov Odrediti za svaki par prijatelja ko će kupiti poklon za onog drugog. Niko ne bi trebao kupiti više poklona nego što može. Ako strelica pokazuje od prijatelja A ka prijatelju B, prijatelj A će kupiti poklon prijatelju B. Koji dijagram pokazuje mogući smer darivanja? Ponuđeni odgovori: A) B) C) D)

56 Tačan odgovor: Tačno rešenje je pod c, kao na slici levo. Postoji još jedno tačno rešenje, koje nije ponuđeno u odgovorima, kao na slici desno. Da bi izabrali ispravno smerove, počećemo sa Bobom. Budući da on nema novca, on mora primiti poklone od svojih prijatelja Ane i Sue. Time je Ana potrošila sav svoj novac i mora primiti poklone od svojih prijatelja Jill i Tom. To znači da za njih nema drugog izbora. Sada ostaje naizgled mnogo opcija. Ali postoji kritičan izbor: Prijatelji Ted i Kim mogu i jedno i drugo kupiti samo jedan poklon. Za ovaj par moramo odlučiti ko će kome kupiti poklon. Ako izaberemo da Kim kupuje poklom Tedu, onda Kim mora primiti poklon od svoje prijateljice Jill. Onda je Jill potrošila sav svoj novac i primiće poklone od Teda, Toma i Sue. Sue takođe mora kupiti poklon za Kim. Ovo rešenje je prikazano na slici levo. Ako izaberemo da Ted kupuje poklon Kim, Ted mora primiti poklon od Jill. Ponovo je Jill potrošila svoj novac i primiće poklone od Kim, Toma i Sue. Ponovo, Sue takođe mora kupiti poklon za Kim. Ovo rešenje je prikazano na slici desno. Ovo znači da svaki izbor za Kim i Teda ne ostavlja izbor za ostala prijateljstva. Budući da su samo dva izbora za Teda i Kim, to postoji samo dva ispravna odgovora. Informatička pozadina Deca i prijateljstva među nekima od njih čine mrežu prijateljstava sa čvorovima (decom) i vezama (prijateljstva). Ovo podseća na dobro poznate društvene mreže koje mnogi ljudi koriste. Ali postoji značajna razlika između ovih mreža: U nekima od njih postoje uzajamna prijateljstva (tj. linkovi bez usmerenja), kao u postavci ovog zadatka za takmičenje Dabar. U

57 drugim mrežama postoje pratioci, tako da linkovi imaju usmerenje: Možete pratiti neke najpopularnije članove, ali oni najverovatnije neće pratiti Vas. U ovom zadatku za takmičenje Dabar, dvosmerni linkovi prijateljstva treba da postanu usmereni linkovi davanja (poklona). Ovo je opet različito od praćenja, budući da postoji ograničen kapacitet (novac) za davanje (kupovinu poklona). Želimo da postignemo što više poklona jednog deteta drugome (poželjno jedan poklon za svako prijateljstvo), ali bez prekoračenja kapaciteta svakog deteta. To je slično dobro poznatom problemu u informatici: U računarskoj mreži, kapaciteti linkova su ograničeni, ali u okviru tih ograničenja želimo da postignemo što veći protok kroz linkove u mreži. Razlika je u tome što u ovom zadatku čvorovi imaju ograničeni kapacitet, dok kod problema protoka u mreži linkovi imaju ograničeni kapacitet. Međutim, nije teško izmeniti problem ovog zadatka u problem protoka u realnoj mreži. Onda je moguće rešiti ovaj zadatak, iako postoji mnogo dece i prijateljstava; efikasni algoritmi za problem protoka u mreži su dobro poznati u informatici. Zapravo, ovo je tipičan način kako se rešavaju problemi u informatici: problem se svodi (redukuje) na onaj za koji je rešenje dobro poznato. Autor: Wolfgang Pohl (Nemačka)

58 Dan kapetana Dabra Kapetan Dabar je izvrstan u rešavanju problema. Kada ga dabrovi zamole, uvek im je spreman pomoći... Na žalost, kapetan ne može obavljati više od jednog zadatka istovremeno. Ako neki dabar traži pomoć u vreme kada kapetan pomaže drugom dabru, odgovoriće mu u skladu s priloženom tablicom prioriteta: Prioriteti visoki srednji niski Zadaci Rad s malim dabrovima Rad u šumi Ostali poslovi Ako se kapetan pita da obavi novi zadatak koji je: manje važan od onoga na kojem trenutno radi, nastavlja s obavljanjem svog zadatka, a novi zadatak ostavlja za kasnije. jednako važan kao i zadatak na kojem trenutno radi, obavljaju se oba zadatka naizmenično po jedan sat svaki. važniji od zadatka na kojem trenutno radi, prekida taj zadatak, obavlja novi, te nakon što ga završi, nastavlja s radom na prekinutom zadatku. Jednoga dana, četiri dabra tražila su od Kapetana Dabra pomoć kako je prikazano na sledećoj slici: Pitanje / Izazov U koliko sati će Kapetan Dabar završiti zadatak gospođe Žutke? Ponuđeni odgovori: a) 13:00 b) 16:00 c) 17:00 d) 18:00

59 Tačan odgovor je: 17h Radni dan kapetana Dabra je prikazan u sledećoj tablici: Kapetan u 9:00 sati započinje zadatak srednjeg prioriteta kojeg je zatražila gospođa Žutka. Zatim, nakon što je u 11:00 sati primio zahtev visokog prioriteta gospođe Crvenke, kapetan prekida zadatak gospođe Žutke i obavlja zadatak gospođe Crvenke. Iako gospodin Smeđko traži novi zadatak u 13:00 sati, kapetan nastavlja izvršavati zadatak gospođe Crvenke jer zahtev gospodina Smeđka ima manji prioritet od trenutnog zadatka. Nakon što je, u 14:00 sati, završio zadatak za gospođu Crvenku, kapetan upoređuje prioritet prekinutog zadataka gospođe Žutke s prioritetom zadatka gospodina Smeđka. Zbog toga što zadatak gospođe Žutke ima veći prioritet od zadatka gospodina Smeđka, nastavlja izvršavati zadatak gospođe Žutke. Na pitanje gospodina Zelenka u 15:00 sati, kapetan prekida izvršavanje zadatka gospođe Žutke kako bi obavio zadatak gospodina Zelenka. Kada, nakon sat vremena, završi zadatak gospodina Zelenka, kapetan opet nastavlja izvršavati zadatak gospođe Žutke i završava ga za jedan sat, u 17:00. Na kraju, kapetan Dabar završava dan obavljanjem zadatka za gospodina Smeđka, u 18:00. Prema tome je u 17:00 sati završena zadatak gospođe Žutke. Informatička pozadina Ovaj problem opisuje raspored izvršavanja procesa unutar operativnog sistema. Operativni sistem je odgovoran za raspoređivanje procesa prema prioritetima obrade podataka. Pomoću operativnog sistema iskorišćava se procesor na način da u svakoj vremenskoj jedinici obrađuje što je moguće više različitih procesa, tzv. multitaskingt. Kako bi se optimalno izvršili svi procesi, metoda rada operativnog sistema je deljenje resursa u realnom vremenu (time sharing) s jednim ili konačno mnogo poslova. U ovom problemu, kapetan Dabar je simbol procesora, zahtevi iz Dabrograda simbolički su procesi, a pravila kapetana odgovaraju nekom obliku algoritma raspoređivanja procesa. Algoritam raspoređivanja procesa operativnog sistema omogućuje multitasking centralne jedinice (CPU) i utiče na ukupnu količinu izvršenih zadataka po vremenskoj jedinici, kao i na prosečno vreme čekanja svih zadataka. Ti su primeri uobičajeni u našoj svakodnevnici, na primer čekanje u redu u supermarketu. Trebali bismo dizajnirati najuspešnije strategije, npr. za izradu rasporeda korišćenja učionice koju koristi više razreda ili kada u ograničenom vremenu treba odraditi više zadataka. Autor: Jihye Kim (Južna Koreja)

60 Oprati uniforme Sve uniforme korišćene na festivalu paradajza trebaju biti oprane koristeći samo jednu mašinu za veš. Mašina može oprati najviše tri uniforme u jednom ciklusu. Broj sati koji je potreban za pranje jedne uniforme je isti broj kao broj mrlja od paradajza na toj uniformi. Broj sati koji je potreban za pranje dve uniforme je isti broj kao broj mrlja od paradajza na uniformi koja ima više mrlja. Broj sati koji je potreban za pranje tri uniforme je isti broj kao broj mrlja na drugoj najprljavijoj uniformi. U sledećoj tabeli su prikazani primeri procesa pranja koji traje tri sata. Pitanje/Izazov Koliko vremena je najmanje potrebno da se opera 14 uniforma (slika ispod)? Ponuđeni odgovori: A. 14 B. 18 C. 10 D. 17

61 Tačan odgovor: Tačaj odgovor je 14. Suština ovog pitanje je proces optimizacije izračunavanja najkraćeg vremena potrebnog da se opera svih 14 uniforma u jednoj mašini grupisanjem uniforma u grupe od jedne,dve ili tri za svaki ciklus pranja. Obratite pažnju na to da moramo odabrati najmanje pranja. Da postoji optimalno rešenje sa 6 ciklusa, i postoje rešenja sa 5 ciklusa, onda bih mogli spojiti 2 ciklusa od rešenja sa 6 ciklusa i dobiti rešenje sa 5 ciklusa koje bi zahtevalo kraće vreme pranja. U ovom zadatku, nije moguće rešenje bez 5 ciklusa, pa će naše optimalno rešenje imati tačno 5 ciklusa. Kako 14 nije deljivo sa 3, trbaće nam 4 ciklusa sa 3 uniforme i jedan ciklus sa 2 uniforme. Da bi umanjili ukupno vreme pranja, želimo imati najmanje mrlja na najprljavijim uniformama u ciklusima gde imamo 2 uniforme, i drugoj od tri najprljavije uniforme u ciklusima gde imamo 3 uniforme (zato što baš te uniforme određuju broj sati tog ciklusa). Tako, najbolji način da se raspodele uniforme jeste da se grupišu uniforme sa najmanje mrlja tako da imamo 5 grupa. Uniforma sa najviše mrlja će odrediti vreme potrebno za pranje, pa tako možemo raspodeliti preostale uniforme u već formirane grupe i tako ćemo dobiti cikluse za optimalno rešenje. Da bismo to uradili, korisno je prvo sortirati uniforme u rastućem poretku: Dakle, grupišemo prve dve uniforme sortiranog niza, zatim sledeće 2 i tako dalje, i dobijamo sledećih 5 parova: (1,1) (2, 2) (3, 3) (3, 4) (4, 4) Ako rasporedimo ostatak uniformi u već postojeće parove, dobijamo sledeće rešenje (postoje druga rešenja sa istim vremenom pranja, koje se mogu postići raspodelom preostalih uniforma rezličito): (1, 1, 4) + (2, 2, 5) + (3, 3, 6) + (3, 4, 9) + (4, 4) = = 14 Dakle, odgovor je 14. Informatička pozadina Problemi optimizacije se fokusiraju na nalaženje najboljeg od svih mogućih rešenja. U ovom problemu, da bi našli najbolje rešenje, prvi korak je sortiranje uniforma u zavisnosti koliko mrlja je na njima. Nakon toga smo uradili grupisanje uniforma u različite grupe da bi vreme pranja bilo što kraće. Na ovaj način, izabrano rešenje iz procesa optimizacije biće uvek garantovano najbolje rešenje. Jedan od najboljih algoritama za dobijanje optimalnog rešenja je tzv. pohlepni algoritam. Ovaj algoritam rešava problem optimalnog rešenja tako što ide ka rešenju korak po korak. Obično Greedy alogoritam koristi sortiranje podataka da utvrdi redosled koji će na kraju biti optimalno rešenje problema. Globalno optimizovano rešenje se dobija kroz sukcesivne procese lokalnih optimalnih rešenja. Algoritmi Greedy su prosti, u suštini, i koriste se za optimizaciju problema, kao: nalaženje optimalne sekvence zadataka izvršenih na računaru, ili nalaženje najkraće putanje u grafu,itd Autor: Sukree Song (Koreja)

62 Strelice Na slici lznad, obojena strelica u polju A pokazuje na tačno jednu obojenu strelicu u polju B i na tačno jednu neobojenu strelicu u polju C. Neobojena strelica u polju C pokazuje na tačno dve neobojene strelice u poljima E i G. Pitanje/Izazov Koja kombinacija obojenih i neobojenih strelica je takva da svaka neobojena strelica pokazuje na tačno jednu drugu neobojenu strelicu i svaka obojena strelica pokazuje na tačno dve obojene strelice? Ponuđeni odgovori: a b c d