Sumar dígitos multiplicados por posición X93976


Statement
 

pdf   zip

html

Escribe un programa que lea números por la entrada y escriba el resultado de sumar cada dígito multiplicado por su posición. Entendemos que el dígito de más peso está en la posición 1, el siguiente dígito de más peso está la posición 2, y así sucesivamente.

Por ejemplo, dado el número 785902, el programa escribirá 86, que es el resultado de evaluar 1×7+2×8+3×5+4×9+5×0+6×2.

Entrada

La entrada tiene un número arbitrario de casos. Cada caso contiene un natural positivo en una línea.

Salida

Para cada caso, hay una línea con el correspondiente número resultante de sumar cada dígito multiplicado por su posición.

Observación

No se pueden utilizar métodos de almacenaje masivo de información (como strings o vectores). Leed los números de entrada uno a uno en variables de tipo int, por ejemplo con cin >> a, y solucionad el problema manipulando los enteros con operaciones básicas +, -, *, / y %.

Evaluación sobre 10 puntos:

  • Solución lenta: 5 puntos.
  • Solución rápida: 10 puntos.

Entendemos por solución rápida una que es correcta, de coste lineal y capaz de superar los juegos de pruebas públicos y privados. Entendemos como solución lenta una que no es rápida, pero es correcta y capaz de superar los juegos de prueba públicos.

Public test cases
  • Input

    35102
    785902
    1010101
    101010
    1010101
    10101
    30219834
    410938
    99999999
    999999
    113311
    13221
    2
    3
    123456789
    

    Output

    26
    86
    16
    9
    16
    9
    159
    105
    324
    189
    35
    26
    2
    3
    285
    
  • Input

    4289384
    46930887
    81692778
    14636916
    57747794
    24238336
    19885387
    49760493
    96516650
    89641422
    25202363
    50490028
    83368691
    2520060
    44897764
    67513927
    65180541
    40383427
    4089173
    3455737
    35005212
    21595369
    94702568
    26956430
    36465783
    61021531
    78722863
    33665124
    45174068
    68703136
    1513930
    1979803
    15634023
    35723059
    69133070
    25898168
    59961394
    89018457
    28175012
    56478043
    31176230
    53377374
    59484422
    14544920
    8413785
    56898538
    34575199
    73594325
    49798316
    38664371
    

    Output

    159
    215
    229
    178
    228
    155
    230
    178
    141
    119
    112
    131
    194
    54
    223
    178
    117
    154
    132
    148
    73
    212
    184
    136
    198
    80
    176
    128
    171
    133
    89
    137
    99
    164
    103
    224
    192
    185
    97
    149
    99
    182
    141
    128
    149
    232
    220
    156
    192
    156
    
  • Information
    Author
    PRO1
    Language
    Spanish
    Translator
    Original language
    Catalan
    Other languages
    Catalan English
    Official solutions
    C++
    User solutions
    C++