IT Egzaminai/2022: Skirtumas tarp puslapio versijų
Nėra keitimo santraukos |
Žymos: Atmesta Vizualus redagavimas |
||
| 58 eilutė: | 58 eilutė: | ||
== 1 užduotis. Sprendimas == | == 1 užduotis. Sprendimas == | ||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
print("Čia bus sprendimas") | print("Čia bus sprendimas!") | ||
</syntaxhighlight> | </syntaxhighlight> | ||
14:42, 26 sausio 2023 versija
1 užduotis. Programavimo konkursas
Į Lietuvos programavimo konkurso finalą pateko penki mokiniai, kurių rezultatai atrankos etape buvo geriausi. Finale mokiniams buvo pateiktos įvairaus sudėtingumo programavimo užduotys. Buvo nurodytas joms atlikti skirtas laiko limitas minutėmis ir jų maksimalus vertinimas taškais. Dalyviai programų failus kėlė į automatinio vertinimo sistemą, kuri tikrino, ar programos teisingos. Kai dalyvio programa pateikdavo teisingus visų testų rezultatus, sistema užfiksuodavo užduoties atlikimo laiką minutėmis. Jei dalyvis išsprendė uždavinį teisingai ir neviršijo tam uždaviniui skirto laiko limito, jis už tą uždavinį gavo maksimalų taškų skaičių; jeigu išsprendė teisingai, bet viršijo laiko limitą, gavo pusę maksimalaus taškų skaičiaus (rezultatas skaičiuojamas sveikaisiais skaičiais; pavyzdžiui, jei maksimalus užduoties vertinimas yra 3 taškai, tai už teisingą užduoties sprendimą, viršijus laiko limitą, dalyvis gavo 1 tašką); jeigu dalyvis uždavinio nesprendė arba išsprendė klaidingai, už jį gavo 0 taškų.
Parašykite programą, kuri rastų didžiausią finale surinktų taškų skaičių ir sudarytų dalyvių, surinkusių daugiausia taškų, sąrašą.
Pradiniai duomenys
Duomenys pateikiami tekstiniame faile U1.txt.
- Pirmoje eilutėje užrašytas finale pateiktų uždavinių skaičius u (1 ≤ u ≤ 12).
- Antroje eilutėje iš eilės nurodytas kiekvienam uždaviniui spręsti skirtas laiko limitas minutėmis. Duomenys atskirti vienu tarpo simboliu.
- Trečioje eilutėje iš eilės nurodytas kiekvieno uždavinio maksimalus vertinimas taškais. Duomenys atskirti vienu tarpo simboliu.
- Tolesnėse eilutėse užrašyti penkių finalo dalyvių duomenys: vardas (10 simbolių) ir kiekvienam uždaviniui spręsti sugaištas laikas minutėmis, užfiksuotas sistemos. Duomenys atskirti vienu tarpo simboliu. Buvo bent vienas dalyvis, kuris teisingai išsprendė bent vieną uždavinį.
Rezultatai
Rezultatus pateikite tekstiniame faile U1rez.txt.
- Pirmoje eilutėje pateikite didžiausią finale surinktų taškų skaičių.
- Tolesnėse eilutėse pateikite dalyvių, surinkusių didžiausią taškų skaičių, sąrašą: dalyvio vardas, jo teisingai išspręstų uždavinių skaičius ir šiems uždaviniams spręsti sugaištas laikas minutėmis. Duomenys atskirti vienu tarpo simboliu. Sąrašas surikiuotas pagal teisingai išspręstų uždavinių skaičių mažėjančiai.
Nurodymai
- Sukurkite ir parašykite vieną funkciją, kuri apskaičiuoja dalyvio surinktų taškų skaičių, teisingai išspręstų uždavinių skaičių ir šiems uždaviniams spręsti sugaištą laiką minutėmis.
| Duomenų failo pavyzdys | Paaiškinimai |
|---|---|
|
6 |
|
| Rezultatų failo pavyzdys | Paaiškinimai |
|
13 |
|
1 užduotis. Sprendimas
print("Čia bus sprendimas!")
2 užduotis. Sportas namuose
Juozas dirba namuose. Norėdamas daugiau judėti, jis nusprendė sausio mėnesį pradėti sportuoti – pagal galimybes atlikti namuose penkis įvairius pratimus. Juozas užrašuose žymėdavosi sportavimo duomenis: kiek kartų sportavo tam tikrą dieną, pratimų pavadinimus, kuriuo dienos metu juos atliko ir kiek laiko minutėmis skyrė nurodytiems pratimams atlikti.
Parašykite programą, kuri apskaičiuotų ir išvestų Juozo sausio mėnesį atliktų pratimų statistiką.
Pradiniai duomenys
Duomenys pateikiami tekstiniame faile U2.txt.
- Pirmoje eilutėje užrašyta, kiek dienų d (1 ≤ d ≤ 31) sausio mėnesį sportavo Juozas.
- Tolesnėse eilutėse užrašyti Juozo sportavimo duomenys: kiek kartų jis sportavo tam tikrą dieną s (1 ≤ s ≤ 7) ir pratimų duomenys: pratimo pavadinimas (14 simbolių), dienos metas (žodis Rytas, Diena, Vakaras; 7 simboliai) ir kiek laiko minutėmis Juozas sugaišo, atlikdamas nurodytą pratimą. Juozas gali tą patį pratimą atlikti tą pačią dieną daugiau negu vieną kartą ir bet kuriuo dienos metu. Duomenys atskirti vienu tarpo simboliu. Buvo bent viena diena, kai Juozas atliko bent vieną pratimą.
Rezultatai
Rezultatus pateikite tekstiniame faile U2rez.txt.
- Įrašykite pratimų pavadinimus, dienų, kai Juozas atliko nurodytus pratimus, skaičių ir kiek iš viso laiko minutėmis sugaišo šiems pratimams atlikti. Pratimų sąrašą surikiuokite abėcėliškai. Duomenis eilutėje atskirkite vienu tarpo simboliu.
- Po kiekvieno pratimo pavadinimo atskirose eilutėse parašykite žodžius Rytas, Diena, Vakaras ir nurodykite, kiek kartų sausio mėnesį Juozas nurodytu dienos metu atliko nurodytą pratimą. Duomenis eilutėje atskirkite vienu tarpo simboliu. Jeigu kurio nors pratimo kuriuo nors dienos metu nebuvo atlikta nė karto, duomenų apie šį dienos metą pateikti nereikia.
Nurodymai
- Programoje naudokite struktūros duomenų tipo masyvą sportavimo duomenims saugoti.
- Sukurkite ir parašykite funkciją, kuri sudarytų pratimų unikalių (nepasikartojančių) pavadinimų
sąrašą. Python programavimo kalboje naudokite žodyno duomenų struktūrą arba struktūrą sudarykite, naudodami klases.
| Duomenų failo pavyzdys | |
|---|---|
|
8 | |
| Paaiškinimai | |
| |
| Rezultatų failo pavyzdys | Paaiškinimai |
|
Atsilenkimai 4 56 |
|
2 užduotis. Sprendimas
print("Čia bus sprendimas")