Rešitve v eni vrstici
Zahteve zaključka
# Naloga 1
def blagajna(s):
return len(s) and max(s[:i].count("+") - s[:i].count("-") for i in range(len(s)))
# Druga varianta - razmisli, kako izracuna stevilo plusov in zakaj deluje!
def blagajna(s):
return len(s) and max(i - 2 * s[:i].count("-") for i in range(len(s)))
# Naloga 2
def kockarji(s, n):
return max((sum(m == 6 for m in s[i::n]), i) for i in range(n))[1] + 1
# Naloga 3
def enaka(s, t):
return not s and not t or s and t and s[0] == t[0] and enaka(s[1:], t[1:])
# Naloga 4
def vsi_deli(skatla, potrebno):
return all(stvar in skatla and skatla[stvar] >= kolicina for stvar, kolicina in potrebno.items())
def kaj_manjka(skatla, potrebno):
return {stvar: kolicina - skatla.get(stvar, 0) for stvar, kolicina in potrebno.items() if kolicina - skatla.get(stvar, 0) > 0}
def blagajna(s):
return len(s) and max(s[:i].count("+") - s[:i].count("-") for i in range(len(s)))
# Druga varianta - razmisli, kako izracuna stevilo plusov in zakaj deluje!
def blagajna(s):
return len(s) and max(i - 2 * s[:i].count("-") for i in range(len(s)))
# Naloga 2
def kockarji(s, n):
return max((sum(m == 6 for m in s[i::n]), i) for i in range(n))[1] + 1
# Naloga 3
def enaka(s, t):
return not s and not t or s and t and s[0] == t[0] and enaka(s[1:], t[1:])
# Naloga 4
def vsi_deli(skatla, potrebno):
return all(stvar in skatla and skatla[stvar] >= kolicina for stvar, kolicina in potrebno.items())
def kaj_manjka(skatla, potrebno):
return {stvar: kolicina - skatla.get(stvar, 0) for stvar, kolicina in potrebno.items() if kolicina - skatla.get(stvar, 0) > 0}
Zadnja sprememba: torek, 11. junij 2013, 18.14