shui shui 没有找到比较好的方法
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
int main()
{
char num_c[20];
while(cin>>num_c)
{
long long ans = 0;
int num_len = strlen(num_c);
int num_i = 0;
for(int i = 0,k = num_len-1;i < num_len;i ++,k--)
{
num_i += pow((double)10,k)*(num_c[i]-'0');
}
while(num_len != 0)
{
int w = num_i - pow((double)10,num_len-1) + 1;
ans += (long long )w*num_len;
num_len--;
num_i -= w;
}
cout<<ans<<endl;
}
return 0;
}