Ovire v vrstici

Odprto: torek, 29. november 2022, 00.00
Rok za oddajo: sreda, 7. december 2022, 11.15

Tokratna naloga bo zelo kratka. V vsaki funkciji bo potrebno napisati samo eno vrstico. Točneje, tokratna naloga bo krajša, ko bi si želeli: v vsaki funkciji boste smeli napisati samo eno vrstico.

Spet se vračamo k isti nalogi, ki smo jo reševali že dvakrat: prvič smo jo imenovali Šikaniranje, drugič pa Funkcijske ovire.

Tokrat jih bomo reševali s pomočjo izpeljanih seznamov. Če vam kaj pomaga (najbrž vam vsaj malo) imate poleg testov že napisane funkcije, ki rešijo naloge ... le predolge so. :)

Obvezna naloga

Napišite funkcije

  • stevilo_ovir(ovire),
  • dolzina_ovir(ovire),
  • sirina(ovire),
  • dodaj_vrstico(bloki, y)
  • globina(ovire, x)
  • senca(ovire)

tako, da bodo vsebovale samo stavek return in ... kar je pač potrebno, da izračunate, kar morajo izračunati.

Dodatna naloga

Napišite funkcijo indeksi(s, subs), ki prejme niza s in subs ter vrne seznam indeksov znotraj s, na katerih se pojavi subs. Klic indeksi("pepelka peče prepelice", "pe") vrne [0, 2, 8, 16], saj se pe pojavi na indeksih 0, 2, 8 in 16. Tudi ta funkcija sme seveda obsegati samo return.

Potem napišite v eni vrstici funkcijo

  • pretvori_vrstico(vrstica).

Čisto dodatna naloga (ki ne šteje nikamor)

Še preostali dve:

  • pretvori_zemljevid(zemljevid) (tule se vam splača prebrati dokumentacijo funkcije sum, druga možnost pa je, da uporabite reduce in add),
  • naj_stolpec(ovire).

Testi