def decodifica (s):
    s = s.split()
    nom = s[0]
    tipus = s[1]
    contingut = int(s[2])
    preu = float(s[3])
    pml = preu/contingut
    return nom, tipus, contingut, preu, pml

def selecciona(nomf1, tipus_sel, nomf2):
    with open(nomf1, 'r') as f1, open(nomf2, 'w') as f2:
        for linia in f1:
            nom, tipus, contingut, preu, pml = decodifica(linia)
            if tipus == tipus_sel:
                f2.write(nom+ ' '+str(round(pml, 2))+'\n')
    return

def class_continguts(nomf):
    dcont = {}
    with open(nomf, 'r') as f:
        for linia in f:
            nom, tipus, contingut, preu, pml = decodifica(linia)
            if contingut not in dcont:
                dcont[contingut] = [nom]
            else:
                dcont[contingut].append(nom)
    for contingut in dcont:
        dcont[contingut].sort()
    return dcont
            
