#include <iostream>
#include <math.h>
using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

//unsigned long long n, i, a, a_old,ile,suma,a_nowe;       <<---------- było i działało na liczbach do 10^18
unsigned long long n, i, ile,suma, a, a_old, a_nowe;



unsigned long long dopiszcyfry (unsigned long long b, unsigned long long b_old) //funkcja licząca ile minimalnie cyfr dodać do danej b, żeby była większa od starej b_old
{
	unsigned long long zwroc;
	double iledziesiatekwieksza=log10(b_old/b); 
	unsigned long long iledziesiatek=floor(iledziesiatekwieksza);
	
	a_nowe=b*pow(10,iledziesiatek+1);
	
	unsigned long long czy0=floor((b_old+1)/pow(10,iledziesiatek))-b; //sprawdza czy b_old+1 ma taki sam początek jak b
	if (a_nowe>10*b&&czy0==0) {a_nowe=b_old+1; zwroc=iledziesiatek; } else zwroc=iledziesiatek+1;
	//cout<<"\n"<<b_old<<" jest wieksze od "<< b<<" wiec trzeba dopisac " << zwroc << " liczb i nowa liczba to "<< a_nowe;
	return zwroc;
}



int main(void) 
{
	ios_base::sync_with_stdio(0);
	cin>>n; //n - 10^6 przypadkow
	a_old=0;suma=0;
	for (i=0;i<n;i++)
	{
		cin>>a;
		if (a<=a_old) {ile=dopiszcyfry(a,a_old);suma=suma+ile;a=a_nowe;} //jeżeli następna wpisana liczba jest mniejsza od poprzedniej, to dodaje cyfry
		a_old=a;
	}		
	
	cout<<suma;
	return 0;
}


