1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <stdio.h>

unsigned long long int dziesiec[20];

int main() {
    dziesiec[0] = 1;
    dziesiec[1] = 10;
    dziesiec[2] = 100;
    dziesiec[3] = 1000;
    dziesiec[4] = 10000;
    dziesiec[5] = 100000;
    dziesiec[6] = 1000000;
    dziesiec[7] = 10000000;
    dziesiec[8] = 100000000;
    dziesiec[9] = 1000000000;
    dziesiec[10] = 10000000000;
    dziesiec[11] = 100000000000;
    dziesiec[12] = 1000000000000;
    dziesiec[13] = 10000000000000;
    dziesiec[14] = 100000000000000;
    dziesiec[15] = 1000000000000000;
    dziesiec[16] = 10000000000000000;
    dziesiec[17] = 100000000000000000;
    dziesiec[18] = 1000000000000000000;
    dziesiec[19] = 10000000000000000000;
    int n, result, dif;
    if(scanf("%i", &n));
    result = 0;
    unsigned long long int cur, a;
    cur = 0;
    while(n-- > 0) {
        if(scanf("%llu", &a)) {
            if(a <= cur) {
                dif = 0;
                while (a <= cur) {
                    a *= 10;
                    dif++;
                }
                if (dif > 1 and cur - a / 10 < dziesiec[dif - 1] - 1) {
                    dif--;
                    cur++;
                } else cur = a;
                result += dif;
            } else cur = a;
        }
    }
    printf("%i", result);
}