Cua amb nombre màxim de duplicats P50227


Statement
 

pdf   zip   main.py

Implementeu una classe per a cues d’enters on cada valor pot aparèixer com a màxim kk vegades.

Operacions: init (construeix una cua buida amb capacitat per a kk duplicats), enter (afegeix un element al final si encara no n’hi ha kk d’iguals a ell mateix), leave (treu el primer), next (retorna el primer sense treure’l), empty (diu si la cua és buida) i print (escriu la cua, amb els elements separats per espais).

Descarregueu-vos el fitxer code.py. Aquest ja conté la interfície de la classe i un programa principal de proves que la fa servir.

La vostra implementació ha de ser senzilla i eficient (tant en espai com en temps). Comproveu els possibles errors amb assercions. Documenteu el vostre codi adequadament.

Public test cases
  • Input

    4            print
    enter 30     print
    enter 20     print
    enter 20     print
    enter 20     print
    enter 20     print
    enter 20     print
    enter 40     print
    leave        print
    

    Output

    30
    30 20
    30 20 20
    30 20 20 20
    30 20 20 20 20
    30 20 20 20 20
    30 20 20 20 20 40
    20 20 20 20 40
    
  • Input

    2           print
    enter 1     print
    enter 2     print
    enter 3     print
    next    
    leave       print
    empty
    leave leave empty

    Output

    1
    1 2
    1 2 3
    1
    2 3
    False
    True
    
  • Information
    Author
    Jordi Petit
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python