Sumar els valors parells d'un item X81708


Statement
 

pdf   zip   tar

html

En aquest exercici treballarem sobre la següent estructura de dades, que ens serveix per a mantenir una seqüència de valors dins de items encadenats mitjançant punters.

struct Item {
 int value;
 Item* next;
};

Exercici

Implementeu una funció RECURSIVA que, donat un Item* que apunta a una seqüència d’items encadenats, retorna la suma dels seus valors.

// Pre:  pitem apunta al primer element d'una seqüència correcta d'items encadenats.
//       L'últim element de la seqüència apunta a NULL. El propi pitem podria ser NULL,
//       cas en el qual no hi hauria elements a la seqüència.
// Post: retorna la suma dels valors parells guardats a la seqüència.
int sumOfPairValues(Item *pitem);

L’enunciat d’aquest exercici ja ofereix uns fitxers que haureu d’utilitzar per a compilar: Makefile, program.cpp, sumOfPairValues.hpp. Us falta crear el fitxer sumOfPairValues.cpp amb els corresponents includes i implementar-hi la funció anterior. Quan pugeu la vostra solució al jutge, només cal que pugeu un tar construït així:

tar cf solution.tar sumOfPairValues.cpp

Entrada

L’entrada té un nombre arbitrari de casos. Cada cas consisteix en una línia amb una llista de valors enters.

Sortida

Per a cada cas, la sortida conté una línia amb la corresponent suma dels valors de la llista.

Public test cases
  • Input

    6 7 5 3 5 6
    9 1 2 7 0 9
    6 0 6 2 6 1 8
    9 2 0 2 3
    5 9 2
    8 9 7 3 6 1 2 9 3 1
    4
    8 4 5 0 3 6 1 0 6 3
    0 6 1 5 5 4
    6 5 6
    3 7
    
    2 5 4 7 4 4 3 0 7 8
    8 8 4 3
    4 9 2 0 6 8 9 2 6 6
    9 5 0 4 8
    1 7 2 7 2
    6 1 0 6 1
    9 4 9 0 9 1
    7 1 1

    Output

    12
    2
    28
    4
    2
    16
    4
    24
    10
    12
    0
    0
    22
    20
    34
    12
    4
    12
    4
    0
    
  • Input

    1 2 3 4 5 6 7 8 9 0
    0 1 3 5 7 9 3 7 1 5
    
    2 3 4 6 7 8
    1 2 4 5 7 8 0 1 3 5 7 9 2 4 6 8 0
    2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2
    0 1 0 1 0 1 0 1 0 1 0 1 0 1
    2 2 4 4 6 6 8 8 2 2 4 4 6 6 8 8 1 3 6
    0
    1 2 4 5 6 8 9 0 1 3 4 5 6 7 9 0 1 2 3 4 5
    1 6
    8 8 0 8 5

    Output

    20
    0
    0
    20
    34
    32
    0
    86
    0
    36
    6
    24
    
  • Information
    Author
    STUDENTS PRO1
    Language
    Catalan
    Official solutions
    Make
    User solutions
    Make