Nombres Doblegats X43287


Statement
 

pdf   zip

Es tracta de calcular el valor de "doblegar" un nombre. "Doblegar" un nombre nn, es la operació que es mostra a la figura següent (obriu el PDF si no podeu veure la figura a la pàgina web del Jutge).

En particular, qualsevol nombre nn el podem considerar una seqüència de dígits i dividir-lo en dues subseqüències consecutives de dígits aa i bb, ja siguin de la mateixa longitud, o bé amb longituds que difereixen només en una unitat (incloent el cas que aa o bb estiguin buides). Concatenant aquestes dues meitats aa i bb de nou obtindríem el nombre nn original.

Llavors, per realitzar la operació de "doblegar" es tracta d’invertir l’ordre de la subseqüència aa, que donaria lloc a ainva_{inv}, i, interpretant ainva_{inv} i bb com enters, sumar-los per obtenir el resultat de la operació de "doblegat".

Per exemple, si tenim que nn és 1234, la subseqüència aa és 12 i la subseqüència bb és 34. Invertint l’ordre d’aa obtenim 21 i el resultat serà, doncs, 21+34=5521 + 34 = 55.

En el cas d’un nombre amb una longitud senar, la partició en dues seqüències té dues possibilitats. Per exemple, si tenim que nn és 12345, podem operar de les dues maneres següents:

  • Dividir nn en a=123a = 123 i b=45b = 45, i invertint aa i sumant, tindríem 321+45=366321 + 45 = 366.

  • Dividir nn en a=12a = 12 i b=345b = 345, i invertint aa i sumant, tindrem 21+345=36621 + 345 = 366.

La xifra del mig doncs, acaba contribuint a la suma final de la mateixa manera en els dos cassos.

Entrada

L’entrada consisteix en una seqüència d’enters estrictament positius.

Sortida

La sortida consisteix en el resultat de "doblegar" cada nombre de l’entrada, tal com s’ha explicat, i amb cada resultat en una línia separada.

Public test cases
  • Input

    1
    55
    444
    555
    9901
    12345
    123456
    9991001
    

    Output

    1 -> 1
    55 -> 10
    444 -> 48
    555 -> 60
    9901 -> 100
    12345 -> 366
    123456 -> 777
    9991001 -> 2000
    
  • Information
    Author
    PRO1
    Language
    Catalan
    Other languages
    English Spanish
    Official solutions
    C++
    User solutions
    C++