Cerca en una llista de parells d'enters X29544


Statement
 

pdf   zip   tar

html

Donats una llista de parells (potser amb repeticions) de nombres enters (sempre acabada amb el parell 0 0), i un número N, cal calcular el nombre d’aparicions d’N com a primer element dels parells de la llista i la suma dels seus companys. Si l’element no existeix, definim la suma dels companys com a zero.

Entrada

Una llista de parells acabada amb el parell 0 0 i un número N

Sortida El número N, el nombre de vegades que apareix N en primer lloc i la suma dels seus companys.

Observació

Cal fer servir la classe list de les stl.

Heu d’enviar tres fitxers en un sol .tar:

  • LlistaIOParInt.hh amb les funcions:

    void LlegirLlistaParInt(list<ParInt>& l);
    // Pre: l és buida; el canal estandar d’entrada conté un nombre
    // parell d’enters, acabat pel parell 0 0

    // Post: s’han afegit al final de l els parells llegits fins al 0 0 (no inclòs)

    void EscriureLlistaParInt(const list<ParInt>& l); (opcional)
    // Pre: cert
    // Post: s’han escrit al canal estandar de sortida els elements de l

  • LlistaIOParInt.cc amb la seva codificació.
  • program.cc amb el programa.

Observeu que per als parells d’enters us donem la classe ParInt que detecta si el parell llegit és 0 0 i que per compilar us donem el Makefile.

Public test cases
  • Input

    5 1
    5 1
    4 5
    5 1
    4 3
    3 2
    1 2
    0 0
    5
    

    Output

    5 3 3
    
  • Input

    5 1
    5 1
    4 5
    0 0
    2
    

    Output

    2 0 0
    
  • Information
    Author
    J. Baixeries (adaptador) Borja Valles (responsable)
    Language
    Catalan
    Official solutions
    Make
    User solutions
    Make