Bombonice
vreme | memorija | ulaz | izlaz |
---|---|---|---|
2000 s | 512 Mb | standardni izlaz | standardni ulaz |
Mala Duca mnogo voli da jede bombonice. Ona je od svoje mame dobila beskonačno bombonica i sada želi da ih rasporedi u kutije. Uzela je praznih kutija, napisala na njima brojeve od do , i postavila ih redom u krug oko sebe. Kutiji sa rednim brojem susedne kutije su sa rednim brojevima i .
Sada će stavljati bombonice u kutije na sledeći način: Izabraće dva broja, i , i onda će u kutiju broj dodati tačno bombinca (zato što voli brojeve koji su potpuni kvadrati), zatim će u sledeću kutiju redom u krugu dodati bombonica, zatim u sledeću , itd. redom dok ne prođe kutija i u poslednju stavi jednu () bombonicu. Ovakav postupak, počev od ponovnog izbora novih brojeva i , će potencijalno ponavljati više puta, sve dok joj ne dosadi.
Duca želi da održava određeni balans bombonica u nekim kutijama, tako da će se povremeno zapitati koliko je ukupno bombonica ubacila u nekih uzastopnih kutija, počev od kutije broj . Kako to može biti jako veliki broj za računanje, moli vas za pomoć da joj svaki put odgovorite na ovakvo pitanje, i za uzvrat će vam dati nekoliko bombonica. Ukoliko svi odgovori budu tačni, pomoći će vam i da osvojite neki poen na takmičenju.
Opisi funkcija
Potrebno je da implementirate sledeće funkcije:
koja se poziva tačno jednom na početku izvršavanja programa, i saopštava da Duca ima kutija postavljenih u krug.
koja označava da Duca dodaje bombonice u kutija, počev od kutije broj , na način koji je opisan u zadatku.
koja treba da vrati koliko se trenutno ukupno bombonica nalazi u uzastpnih kutija, počev od kutije broj . Pošto ovaj broj može biti veliki, vratiti ostatak pri deljenju broja bombonica sa .
Primer
| Pozivi funkcija | Objašnjenje |
Morate biti ulogovani kako biste poslali zadatak na evaluaciju.