#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>
#include<cmath>
#include<vector>
#include<map>
#include<algorithm>
#include<string>
#include<sstream>
using namespace std;
int Str2Int(const string & s, int st, int ed)
{
int n = 0;
for (int i = st; i < ed; ++i) {
n = n * 10 + s[i]- '0';
}
return n;
}
int pos_power(int base, int ind) {
int res = 1;
for (int i = 0; i < ind; ++i)
res *= base;
return res;
}
int Count2(int n) {
int cnt = 0;
int ord = 0;
for (ord = 0; n / pos_power(10, ord) > 0; ++ord) {
int bit = n / pos_power(10, ord) % 10;
cnt += bit*ord* pos_power(10, ord-1);
if (bit > 2)
cnt += pos_power(10, ord);
else if (bit == 2)
cnt += n % pos_power(10, ord) + 1;
}
return cnt;
}
int main(void) {
int L, R;
while (cin >> L >> R) {
//cout << Count2(R) << endl;
//cout << Count2(R) << " " << Count2(L - 1) << endl;
cout << (Count2(R) - Count2(L - 1)) << endl;
}
return 0;
}
參考链接: <a target=_blank href="http://www.cppblog.com/AllKillMan/archive/2011/08/18/153798.html">http://www.cppblog.com/AllKillMan/archive/2011/08/18/153798.html</a>