|
@ -21,27 +21,6 @@ def histogram(seznam): |
|
|
d[i] += 1 |
|
|
d[i] += 1 |
|
|
return d |
|
|
return d |
|
|
|
|
|
|
|
|
# Pozor: zarovnáno velmi netradičně pro přehlednost |
|
|
|
|
|
roman_numerals = zip((1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1), |
|
|
|
|
|
('M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I')) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def roman(num): |
|
|
|
|
|
res = "" |
|
|
|
|
|
for i, n in roman_numerals: |
|
|
|
|
|
res += n * (num // i) |
|
|
|
|
|
num %= i |
|
|
|
|
|
return res |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def from_roman(rom): |
|
|
|
|
|
if not rom: |
|
|
|
|
|
return 0 |
|
|
|
|
|
for i, n in roman_numerals: |
|
|
|
|
|
if rom.upper().startswith(n): |
|
|
|
|
|
return i + from_roman(rom[len(n):]) |
|
|
|
|
|
raise Exception('Invalid roman numeral: "%s"', rom) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def seznam_problemu(): |
|
|
def seznam_problemu(): |
|
|
"""Funkce pro hledání nekonzistencí v databázi a dalších nežádoucích stavů webu/databáze. |
|
|
"""Funkce pro hledání nekonzistencí v databázi a dalších nežádoucích stavů webu/databáze. |
|
|